Imagine predictive decoding apparatus

ABSTRACT

There is disclosed image predictive coding apparatus and method, image predictive decoding apparatus and method, and recording medium which stores therein the image predictive coding method or the image predictive decoding method, of which the transform efficiency is remarkably improved in comparison with the prior art. According to the image predictive coding apparatus and method, when dividing inputted image data to be coded into image data of a plurality of small regions which are adjacent to each other and coding the image data of an objective small region to be processed among the image data of the plurality of divided small regions which are adjacent to each other, reconstructed image data of a reproduction small region adjacent to the image data of the objective small region to be processed is used as image data of an intra-frame prediction small region of the objective small region to be processed, the image data of the intra-frame prediction small region is used as image data of an optimum prediction small region and image data of a difference small region which are differences between the image data of the objective small region to be processed and the image data of the optimum prediction small region is generated. Then, the generated image data of the difference small region is coded and outputted, and then the coded image data of the difference small region is decoded, so that the reconstructed image data of the reproduction small region is generated by adding the decoded image data of the difference small region to the image data of the optimum prediction small region.

This is a divisional application of Ser. No. 08/983,640, filed Jan. 28,1998 now U.S. Pat. No. 6,148,109 which is a 371 of PCT JP 97/01800 filedMay 28, 1997.

TECHNICAL FIELD

The present invention relates to an image predictive coding apparatusand method, image predictive decoding apparatus and method and recordingmedium. The present invention relates, in particular, to an imagepredictive coding apparatus and method as well as image predictivedecoding apparatus and method for storing digital image data of an imagewhich is a static image or a dynamic image into a recording medium suchas an optical disk or for transmitting the data through a communicationline. The present invention also relates to a recording medium in whicha program including the steps of the image predictive coding method isrecorded as well as a recording medium in which a program including thesteps of the image predictive decoding method is recorded.

BACKGROUND ART

For the purpose of efficiently storing or transmitting a digital image,the image is required to be coded in a compression coding manner. As amethod for coding a digital image in a compression coding manner, thereis a waveform coding method of sub-band coding, wavelet coding, fractalcoding or the like other than discrete cosine transform (referred to asa DCT transform hereinafter) represented by JPEG (Joint PhotographicExperts Group) and MPEG (Motion Picture Experts Group). For the purposeof removing a redundant signal between images, an inter-image predictionwith a motion compensation is executed, thereby subjecting adifferential signal to waveform coding.

According to the MPEG system, an input image is processed while beingdivided into a plurality of 16×16 macro blocks. One macro block isfurther divided into 8×8 blocks and quantized after undergoing 8×8 DCTtransform. This is called an intra-frame coding.

On the other hand, according to a motion detection method inclusive ofblock matching, a prediction macro block having the minimum error withrespect to the objective macro block is detected from other framesadjacent in time, the detected prediction macro block is subtracted fromthe target macroblock thereby forming a differential macro block, andthis macro block is quantized after undergoing 8×8 DCT transform. Thisis called an inter-frame coding, and the prediction macro block iscalled a prediction signal of the time domain.

A normal image has spatially similar regions, and an image can beapproximated to a spatial region by utilizing this characteristic. In amanner similar to that of the prediction signal of the time region, aprediction signal can also be obtained from an identical frame. This iscalled a spatial prediction signal.

Since spatially adjacent two pixel values are close to each other, theprediction signal of the spatial region is generally located close tothe target signal. On the other hand, on the receiving side or thereproducing side, a signal which has been coded and reproduced in thepast is required to be used as the prediction signal since the originalimage is absent. From these two factors, the prediction signal of thespatial region is required to be generated at high speed. This isbecause the signal used for the generation of a prediction signal has tobe decoded and reproduced.

Therefore, the prediction signal of the spatial region is required to begenerated in a simple manner, as well as, in high accuracy. Furthermore,a quickly operable construction is required in a coding apparatus and adecoding apparatus.

The coding of image data has been widely used in many internationalstandards such as JPEG, MPEG1, H.261, MPEG2 and H.263. Each of thelatter standards has a more improved coding efficiency. That is, mucheffort has been devoted to further reducing the number of bits than inthe conventional standards in expressing the same image quality.

Coding of image data of moving images is comprised of intra-frame codingand prediction frame coding. In a representative hybrid coding systemsuch as MPEG1 Standard, consecutive frames can be classified into thefollowing three different types:

(a) intra-frame (referred to as an “I-frame” hereinafter);

(b) prediction frame (referred to as a “P-frame” hereinafter); and

(c) bidirectional prediction frame (referred to as a “B-frame”hereinafter).

An I-frame is coded independently of the other frames, i. e., theI-frame is compressed without referring to the other frames. A P-frameis coded through motion detection and compensation by using thepreceding frame for predicting the contents of a coded frame (it is aP-frame). A B-frame is coded through motion detection and compensationby using information from the preceding frame and information from thesubsequent frame for predicting the data of the contents of the B-frame.The preceding frame and the subsequent frames could be an I-frame or aP-frame. The I-frame is coded in intra- modes. The P-frame and theB-frame are coded in intra and prediction mode.

As the characteristics of the coding of the I-frame, P-frame and B-frameare different from one another, the compressing methods thereof differfrom one another. The I-frame uses no temporal prediction for thepurpose of reducing the redundancy, and therefore, it requires more bitsthan those of the P-frame and the B-frame.

A description will be herein made taking MPEG2 as an example. It isassumed that the bit rate is 4 Mbits/sec and an image having 30frames/sec is used. In general, the ratio of the number of bits used forthe I- P- and B-frames is 6:3:1. Therefore, the I-frame uses about 420kbits/s, and the B-frame uses about 70 kbits/s This is because theB-frame is sufficiently predicted from both directions.

FIG. 14 is a block diagram showing a construction of a prior art imagepredictive coding apparatus. Since a DCT transform is executed on ablock basis, the recent image coding methods are all based on thedivision of an image into smaller blocks. According to the intra-framecoding, an inputted digital image signal is first of all subjected to ablock sampling process 1001 as shown in FIG. 14. Next, the blocksobtained after the block sampling process 1001 are subjected to a DCTtransform process 1004 and thereafter subjected to a quantizing process1005 and a run length Huffman variable length coding (VLC: VariableLength Coding; entropy coding) process 1006. On the other hand,according to the prediction frame coding, an inputted digital image issubjected to a motion compensating process 1003, and themotion-compensated block (i.e., the predicted block) is subjected to theDCT transform process 1004. Next, the quantizing process 1005 and therun length Huffman VLC coding (entropy coding) process 1006 areexecuted.

The fact that the block-based DCT transform process 1004 removes orreduces a spatial redundancy inside the target block to be processed andthe fact that the motion detecting and compensating processes 1002 and1003 remove or reduce a temporal redundancy between adjacent frames areknown from the conventional image coding techniques. Further, the runlength Huffman VLC coding or other entropy coding processes 1006executed after the DCT transform process 1004 and the quantizing process1005 removes statistical redundancy between quantized DCT transformcoefficients. However, the process is executed only on the blocks withinan image.

A digital image has a spatially great redundancy as an inherentcharacteristic. This redundancy exists not only in the blocks inside aframe but also between blocks over blocks. However, the fact that noactual method uses a process for removing the redundancy between blocksof an image is apparent from the above description.

According to the existing image coding method, the DCT transform process1004 or another transform process is executed on the block basis due torestrictive conditions in terms of hardware formation and calculation.

Although the spatial redundancy is reduced through the block-basedtransform process, it is restricted to the inside of one block. Theredundancy between adjacent two blocks is not satisfactorily considered.The redundancy, however, can be further reduced when the intra-framecoding which consistently consumes a great number of bits.

Furthermore, the fact that the block-based DCT transform process removesor reduces the spatial redundancy inside the target block to beprocessed and the fact that the motion predicting and compensatingprocesses remove or reduce the temporal redundancy between adjacent twoframes are known from the existing image coding techniques. A zigzagscan and the run length Huffman VLC coding or another entropy codingprocess, which are executed after the DCT transform process and thequantizing process, remove the statistical redundancy in quantized DCTtransform coefficients, however, they are still restricted to the insideof one block.

A digital image inherently includes a great spatial redundancy. Thisredundancy exists not only inside a block but also between blocks overblocks of an image. There is no existing method uses the process forremoving the redundancy between blocks of one image at all except forthe DC coefficient prediction of JPEG, MPEG1 and MPEG2.

According to MPEG1 and MPEG2, the DC coefficient prediction is executedby subtracting the DC value of the preceding coded block from thecurrently coded block. This is a simple predicting method which does nothave an adaptiveness or mode switching when the prediction isinappropriate. Further, it merely includes DC coefficients.

According to the current state of the concerned technical field, thezigzag scan is used for all blocks prior to the run length coding. Noattempt at making scan adaptive on the basis of the data of the contentsof the block has been made.

FIG. 22 is a block diagram showing a construction of a prior art imagepredictive coding apparatus. In FIG. 22, the prior art image predictivecoding apparatus is provided with a block sampling unit 2001, a DCTtransform unit 2003, a quantizing unit 2004, a zigzag scan unit 2005 andan entropy coding unit 2006. In this specification, the term “unit”device a circuit device.

According to the intra-frame coding (i.e., coding inside a frame), aninputted image signal is subjected to a block sampling process 2001 andthereafter subjected directly to a DCT transform process 2003. Then, aquantizing process 2004, a zigzag scan process 2005 and an entropycoding process 2006 are sequentially executed. On the other hand,according to the inter-frame coding (i.e., coding between frames, i.e.,prediction frame coding), a motion detecting and compensating process isexecuted in a unit 2011 after the block sampling process 2001, and thena prediction error is obtained from an adder 2002 by subtracting adetection value obtained from the unit 2011 from the image data obtainedfrom the block sampling 2001. Further, this prediction error issubjected to the DCT transform process 2003 and then to the quantizingprocess 2004, zigzag scan process 2005 and entropy coding process 2006similar to the intra-frame coding.

In a local decoder provided in the image predictive coding apparatusshown in FIG. 22, an inverse quantizing process and an inverse DCTtransform process are executed in units 2007 and 2008. According to theinter/frame coding, a prediction value obtained through motion detectionand compensation is added by an adder 2009 to the prediction errorreconstructed by the units 2007 and 2008, and the addition value devicelocally decoded image data The decoded image data is stored into a framememory 2010 of the local decoder. Finally, a bit stream is outputtedfrom the entropy coding unit 2010 and transmitted to the imagepredictive decoding apparatus of the other party.

FIG. 23 is a block diagram showing a construction of a prior art imagepredictive decoding apparatus. The bit stream is decoded by a variablelength decoder (VLD: Variable Length Decoding) unit (or an entropydecoding unit) 2021, and the decoded image data is then subjected to aninverse quantizing process and an inverse DCT transform process in units2023 and 2024. According to the inter-frame coding, a prediction valuewhich is obtained through motion detection and compensation and formedby a unit 2027 is added by an adder 2025 to the prediction errorreconstructed, thereby forming locally decoded image data. The locallydecoded image data is stored into a frame memory 1026 of the localdecoder.

According to the existing image coding techniques, the DCT transformprocess or other transform process is executed on the block basis due tothe restrictive conditions in terms of hardware formation andcalculation. The spatial redundancy will be reduced through theblock-based transform. However, it is restricted to the inside of ablock. The redundancy between adjacent blocks is not satisfactorilyconsidered. In particular, the intra-frame coding which consistentlyconsumes a great amount of bits is not satisfactorily considered.

SUMMARY OF THE INVENTION

A first object of the present invention is to provide an imagepredictive coding apparatus and method as well as image predictivedecoding apparatus and method capable of simply generating predictionimage data of the spatial region at high speed with high accuracy.

A second object of the present invention is to provide an imagepredictive coding apparatus and method as well as image predictivedecoding apparatus and method capable of removing the redundancy in ablock further than in the prior art image predictive coding apparatusand image predictive decoding apparatus and more efficiently coding ordecoding image data.

Further, a third object of the present invention is to provide an imagepredictive coding apparatus and method as well as image predictivedecoding apparatus and method capable of improving the efficiency of anentropy coding process by solving the problem that important transformcoefficients are concentrated on different regions of a block dependingon the internal properties of image data and by determining the correctscan method for the block.

Furthermore, a fourth object of the present invention is to provide arecording medium in which the steps of the image predictive codingmethod or the image predictive decoding method are recorded.

According to the first aspect of the present invention, there isprovided an image predictive coding apparatus comprising:

dividing device operable to divide inputted image data to be coded intoimage data of a plurality of small regions which are adjacent to oneanother;

first generating device operable, when code the image data of a targetsmall region to be processed among the image data of the plurality ofsmall regions which are divided by the dividing device and adjacent toone another, to use image data of a reconstructed small region adjacentto the image data of the target small region to be processed as imagedata of an intra-frame prediction small region of the target smallregion to be processed, to use the image data of the intra-frameprediction small region as image data of an optimum prediction smallregion and to generate image data of a difference small region which aredifferences between the image data of the objective small region to beprocessed and the image data of the optimum prediction small region;

coding device operable to code the image data of the difference smallregion generated by the generating device;

decoding device operable to decode the image data of the differencesmall region coded by the coding device; and

second generating device operable to generate image data of a reproducedreproduction small region by adding the image data of the differencesmall region decoded by the decoding device to the image data of theoptimum prediction small region.

Also, according to the second aspect of the present invention, there isprovided an image predictive coding apparatus comprising:

dividing device operable to divide inputted image data to be coded intoimage data of a plurality of small regions which are adjacent to oneanother;

first generating device operable, when coding an objective small regionto be processed among a plurality of small regions which are divided bythe dividing device and adjacent to one another, to use only significantimage data indicated by an inputted significance signal representingwhether or not the coded image data is significant as image data of anintra-frame prediction small region of the objective small region to beprocessed among image data of a reproduced reproduction small regionadjacent to the image data of the objective small region to beprocessed, to use the image data of the intra-frame prediction smallregion as image data of an optimum prediction small region and togenerate image data of a difference small region which are differencesbetween the image data of the objective small region to be processed andthe image data of the optimum prediction small region;

coding device operable to code the image data of the difference smallregion generated by the first generating device;

decoding device operable to decode the image data of the differencesmall region coded by the coding device; and

second generating device operable to generate image data of a reproducedreproduction small region by adding the image data of the differencesmall region decoded by the decoding device to the image data of theoptimum prediction small region.

Further, according to the third aspect of the present invention, thereis provided an image predictive decoding apparatus comprising:

analyzing device operable to analyze an inputted coded image data seriesand outputting an image difference signal;

decoding device operable to decode image data of a reproductiondifference small region from the image difference signal outputted fromthe analyzing device;

a line memory for storing therein image data for generating image dataof a predetermined intra-frame prediction small region;

generating device operable to execute a prediction signal generatingprocess on the image data from the line memory to thereby usereconstructed image data adjacent to the image data of the reproductiondifference small region as image data of an intra-frame prediction smallregion and outputting the image data of the intra-frame prediction smallregion as image data of an optimum prediction small region; and

adding device operable to add the image data of the reproductiondifference small region from the decoding device to the image data ofthe optimum prediction small region from the generating device,outputting image data for generating image data of an intra-frameprediction small region of the result of addition and storing the datainto the line memory.

Still further, according to the fourth aspect of the present invention,there is provided an image predictive decoding apparatus comprising:

analyzing device operable to analyze an inputted coded image data seriesand outputting an image difference signal, a motion vector signal and acontrol signal;

decoding device operable to decode the image difference signal outputtedfrom the analyzing device into image data of a reproduction differencesmall region;

control device operable to output a switching signal for controllingmotion compensating device and generating device to selectively operatebased on the control signal outputted from the analyzing device;

a frame memory for storing therein predetermined reproduction imagedata;

a line memory for storing therein image data for generating image dataof a predetermined intra-frame prediction small region;

motion compensating device operable to execute a motion compensatingprocess on an inputted motion vector signal in response to the switchingsignal from the control device to thereby generate image data of a timeprediction small region from the frame memory and outputting the data asimage data of an optimum prediction small region;

generating device operable to execute a prediction signal generatingprocess on the image data from the line memory in response to theswitching signal from the control device to thereby use reconstructedimage data adjacent to the image data of the reproduction differencesmall region as image data of an intra-frame prediction small region andoutputting the image data of the intra-frame prediction small region asimage data of an optimum prediction small region; and

adding device operable to add the image data of the reproductiondifference small region from the decoding device to the image data ofthe optimum prediction small region from the generating device tothereby output reproduction image data of the result of addition,storing the reproduction image data into the frame memory and storingonly the image data for generating the image data of the intra-frameprediction small region into the line memory.

Also, according to the fifth aspect of the present invention, there isprovided an image predictive decoding apparatus comprising:

analyzing device operable to analyze an inputted coded image data seriesand outputting a compressed shape signal and an image difference signal;

first decoding device operable to decode the compressed shape signaloutputted from the analyzing device into a reproduction shape signal;

second decoding device operable to decode the image difference signaloutputted from the analyzing device into image data of a reproductiondifference small region;

a line memory for storing therein image data for generating image dataof a predetermined intra-frame prediction small region;

generating device operable to execute a prediction signal process on theimage data from the line memory to thereby use only significant imagedata expressed by the reproduction shape signal as image data of anintra-frame prediction small region among the reconstructed image dataadjacent to the image data of the reproduction difference small regionand outputting the image data of the intra-frame prediction small regionas image data of an optimum prediction small region; and

adding device operable to add the image data of the reproductiondifference small region from the second decoding device to the imagedata of the optimum prediction small region from the generating deviceto thereby output image data of the result of addition and storing onlyimage data for generating the image data of the intra-frame predictionsmall region into said line memory.

Further, according to the sixth aspect of the present invention, thereis provided an image predictive decoding apparatus comprising:

analyzing device operable to analyze an inputted coded image data seriesand outputting a compressed shape signal, an image difference signal, amotion vector signal and a control signal;

first decoding device operable to decode the compressed shape signaloutputted from the analyzing device into a reproduction shape signal;

second decoding device operable to decode the image difference signaloutputted from the analyzing device into image data of a reproductiondifference small region;

control device operable to output a switching signal for controlling themotion compensating device and generating device to selectively operatebased on the control signal outputted from the analyzing device;

a frame memory for storing therein predetermined reproduction imagedata;

a line memory for storing therein image data for generating image dataof a predetermined intra-frame prediction small region;

motion compensating device operable to execute a motion compensatingprocess on the reproduction image data from the frame memory based onthe motion vector signal outputted from the analyzing device in responseto the switching signal outputted from the control device to therebygenerate image data of a time prediction small region and outputting thedata as image data of an optimum prediction small region;

generating device operable to execute a prediction signal process on theimage data from the line memory in response to the switching signaloutputted from the control device to hereby use only significant imagedata expressed by the reproduction shape signal among the reconstructedimage data adjacent to the image data of the reproduction differencesmall region as the image data of the intra-frame prediction smallregion and outputting the image data of the intra-frame prediction smallregion as image data of an optimum prediction small region; and

adding device operable to add the image data of the reproductiondifference small region from the second decoding device to the imagedata of the optimum prediction small region from the generating deviceto thereby output reproduction image data of the result of addition,storing the reproduction image data into the frame memory and storingonly image data for generating the image data of the intra-frameprediction small region into the line memory.

According to the seventh aspect of the present invention, there isprovided an image predictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

transforming device operable to transform the image data of the blockssampled by the sampling device into coefficient data of a predeterminedtransform domain;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of a block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data of a most efficient prediction block among thecoefficient data of the plurality of prediction blocks formed by thepredicting device and transmitting an identifier indicating the selectedprediction block in an indication bit form to an image predictivedecoding apparatus;

first adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of a prediction error of the result of subtraction;

quantizing device operable to quantize the coefficient data of theprediction error outputted from the first adding device;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error from the quantizing device andtransmit the coded coefficient data of the prediction error to the imagepredictive decoding apparatus;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error from the quantizing device and output thecoefficient data of the restored block;

second adding device operable to add the coefficient data of theprediction block outputted from the determining device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby output coefficient data of the restoredblock and storing the data into the block memory; and

inverse transforming device operable to inverse transform thecoefficient data of the block outputted from the second adding device,thereby generating image data of the restored block.

Also, according to the eighth aspect of the present invention, there isprovided an image predictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

transforming device operable to transform the image data of theplurality of blocks sampled by the sampling device into coefficient dataof a predetermined transform domain;

quantizing device operable to quantize the coefficient data of thetransform domain from the transforming device;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of a block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data of a most efficient prediction block among thecoefficient data of the plurality of prediction blocks formed by thepredicting device and transmit an identifier indicating the selectedprediction block in an indication bit form to an image predictivedecoding apparatus;

first adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of a prediction error of the result of subtraction;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error from the first adding deviceand transmitting the coded coefficient data of the prediction error tothe image predictive decoding apparatus;

second adding device operable to add the coefficient data of theprediction error from the first adding device to the coefficient data ofthe prediction block outputted from the determining device to therebyrestore and output the quantized coefficient data of the current blockand storing the data into the block memory;

inverse quantizing device operable to inverse quantize the coefficientdata of the current block outputted from the second adding device andoutputting the resulting data; and

inverse transforming device operable to inverse transform thecoefficient data of the current block from the inverse quantizingdevice, thereby generating image data of the restored block.

Further, according to the ninth aspect of the present invention, thereis provided an image predictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

compensating device operable to execute a motion compensating process onthe image data of an inputted block, thereby generating and outputtingimage data of a prediction error of a motion-compensated block;

first adding device operable to subtract the image data of theprediction error of the block outputted from the compensating devicefrom the image data of the block outputted from the sampling device,thereby outputting image data of the block of the result of subtraction;

transforming device operable to transform the image data of the blockoutputted from the first adding device into coefficient data of apredetermined transform domain;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of the block whichhas been previously reconstructed and stored in the block memory,

determining device operable to determine, select and output thecoefficient data of a most efficient prediction block among thecoefficient data of the plurality of prediction blocks formed by thepredicting device and transmitting an identifier indicating the selectedprediction block in an indication bit form to an image predictivedecoding apparatus;

second adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of the prediction error of the result of subtraction;

quantizing device operable to quantize the coefficient data of theprediction error outputted from the second adding device;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error from the quantizing device andtransmitting the coded coefficient data of the prediction error to theimage predictive decoding apparatus;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error from the quantizing device and output thecoefficient data of the restored block;

third adding device operable to add the coefficient data of theprediction block outputted from the determining device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby output the coefficient data of the restoredblock and storing the data into the block memory;

inverse transforming device operable to inverse transform thecoefficient data of the block outputted from the third adding device,thereby generating image data of the restored block; and

fourth adding device operable to add the image data of the predictionerror of the motion-compensated block outputted from the motioncompensating device to the image data of the restored block from theinverse transforming device, thereby outputting the image data of therestored block to the compensating device.

Still further, according to the tenth aspect of the present invention,there is provided an image predictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

compensating device operable to execute a motion compensating process onthe image data of an inputted block, thereby generating and outputtingimage data of a prediction error of a motion-compensated block;

first adding device operable to subtract the image data of theprediction error of the block outputted from the compensating devicefrom the image data of the block outputted from the sampling device,thereby outputting image data of the block of the result of subtraction;

transforming device operable to transform the image data of the blockoutputted from the first adding device into coefficient data of apredetermined transform domain;

quantizing device operable to quantize the coefficient data of thetransform domain from said transforming device;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of the block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data of a most efficient prediction block among thecoefficient data of the plurality of prediction blocks formed by thepredicting device and transmitting an identifier indicating the selectedprediction block in an indication bit form to an image predictivedecoding apparatus;

second adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of the prediction error of the result of subtraction;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error from the second adding deviceand transmitting the coded coefficient data of the prediction error tothe image predictive decoding apparatus;

third adding device operable to add the coefficient data of theprediction error from the second adding device to the coefficient dataof the prediction block outputted from the determining device to therebyrestore and output the coefficient data of the quantized current blockand storing the data into the block memory;

inverse quantizing device operable to inverse quantize the coefficientdata of the current block outputted from the third adding device andoutput the resulting data;

inverse transforming device operable to inverse transform thecoefficient data of the current block from the inverse quantizingdevice, thereby generating image data of the restored block; and

fourth adding device operable to add the image data of the predictionerror of the motion-compensated block outputted from the motioncompensating device to the image data of the restored block from theinverse transforming device, thereby outputting the image data of therestored block to the compensating device.

According to the eleventh aspect of the present invention, there isprovided an image predictive decoding apparatus provided incorrespondence with the image predictive coding apparatus of the seventhaspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by said extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error outputted from the decoding device andoutputting the resulting data;

third adding device operable to add the coefficient data of theprediction block outputted from the further predicting device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby restore and output the coefficient data ofthe current block at the present timing and storing the data into theblock memory; and

further inverse transforming device operable to inverse transform thecoefficient data of the current block outputted from the third addingdevice and outputting the image data of the restored current block.

Also, according to the twelfth aspect of the present invention, there isprovided an image predictive decoding apparatus provided incorrespondence with the image predictive coding apparatus of the eighthaspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by the extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error,

third adding device operable to add the coefficient data of theprediction block outputted from the predicting device to the coefficientdata of the prediction error outputted from the decoding device tothereby restore and output the coefficient data of the current block atthe present timing and storing the data into said block memory;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error outputted from the third adding device andoutputting the resulting data; and

further inverse transforming device operable to inverse transform thecoefficient data of the current block outputted from the inversequantizing device and output the image data of the restored currentblock.

Further, according to the thirteenth aspect of the present invention,there is provided an image predictive decoding apparatus provided incorrespondence with the image predictive coding apparatus of the ninthaspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by the extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error outputted from said decoding device andoutput the resulting data;

third adding device operable to add the coefficient data of theprediction block outputted from the further predicting device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby restore and output the coefficient data ofthe current block at the present timing and storing the data into theblock memory;

further inverse transforming device operable to inverse transform thecoefficient data of the current block outputted from the third addingdevice and output the image data of the restored current block;

further compensating device operable to execute a motion compensatingprocess on the image data of the current block outputted from thefurther inverse transforming device, thereby outputtingmotion-compensated prediction error data; and

fifth adding device operable to subtract the motion-compensatedprediction error data outputted from the further compensating devicefrom the image data of the current block outputted from the furtherinverse transforming device, thereby outputting the image data of therestored block of the result of subtraction.

Still further, according to the fourteenth aspect of the presentinvention, there is provided an image predictive decoding apparatusprovided in correspondence with the image predictive coding apparatus ofthe tenth aspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by the extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error;

third adding device operable to add the coefficient data of theprediction block outputted from the predicting device to the coefficientdata of the prediction error outputted from the decoding device tothereby restore and output the coefficient data of the current block atthe present timing and storing the data into the block memory;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error outputted from the third adding device andoutput the resulting data;

further inverse transforming device operable to inverse transform thecoefficient data of the current block outputted from the inversequantizing device and output the image data of the restored currentblock;

further compensating device operable to execute a motion compensatingprocess on the image data of the current block outputted from thefurther inverse transforming device, thereby outputtingmotion-compensated prediction error data; and

fifth adding device operable to subtract the motion-compensatedprediction error data outputted from the further compensating devicefrom the image data of the current block outputted from the furtherinverse transforming device, thereby outputting the image data of therestored block of the result of subtraction.

According to the fifteenth aspect of the present invention, there isprovided an image predictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

transforming device operable to transform the image data of the blockssampled by the sampling device into coefficient data of a predeterminedtransform domain;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of a block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data and scan method of a most efficient prediction blockamong the coefficient data of the plurality of prediction blocks formedby the predicting device and transmitting an identifier indicating theselected prediction block and scan method in an indication bit form toan image predictive decoding apparatus;

first adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of a prediction error of the result of subtraction;

quantizing device operable to quantize the coefficient data of theprediction error outputted from the first adding device;

scanning device operable to execute a scan process on the coefficientdata of the prediction error from the quantizing device according to thescan method determined by the determining device and outputting thecoefficient data of the prediction error obtained after the scanprocess;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error obtained after the scan processoutputted from the scanning device and transmit the coded coefficientdata of the prediction error to the image predictive decoding apparatus;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error from the quantizing device and output thecoefficient data of the restored block;

second adding device operable to add the coefficient data of theprediction block outputted from the determining device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby output coefficient data of the restoredblock and storing the data into the block memory; and

inverse transforming device operable to inverse transform thecoefficient data of the block outputted from the second adding device,thereby generating image data of the restored block.

Also, according to the sixteenth aspect of the present invention, thereis provided an image predictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

transforming device operable to transform the image data of theplurality of blocks sampled by the sampling device into coefficient dataof a predetermined transform domain;

quantizing device operable to quantize the coefficient data of thetransform domain from the transforming device;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of a block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data and scan method of a most efficient prediction blockamong the coefficient data of the plurality of prediction blocks formedby the predicting device and transmit an identifier indicating saidselected prediction block and scan method in an indication bit form toan image predictive decoding apparatus;

first adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of a prediction error of the result of subtraction;

scanning device operable to execute a scan process on the coefficientdata of the prediction error from the first adding device according tothe scan method determined by the determining device and outputting thecoefficient data of the prediction error obtained after the scanprocess;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error obtained after the scan processoutputted from the scanning device and transmitting the codedcoefficient data of the prediction error to the image predictivedecoding apparatus;

second adding device operable to add the coefficient data of theprediction error from the first adding device to the coefficient data ofthe prediction block outputted from the determining device to therebyrestore and output the quantized coefficient data of the current blockand storing the data into said block memory;

inverse quantizing device operable to inverse quantize the coefficientdata of the current block outputted from the second adding device andoutput the resulting data; and

inverse transforming device operable to inverse transform thecoefficient data of the current block from the inverse quantizingdevice, thereby generating image data of the restored block.

Further, according to the seventeenth aspect of the present invention,there is provided an image predictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

compensating device operable to execute a motion compensating process onthe image data of an inputted block, thereby generating and outputtingimage data of a prediction error of a motion-compensated block;

first adding device operable to subtract the image data of theprediction error of the block outputted from the compensating devicefrom the image data of the block outputted from the sampling device,thereby outputting image data of the block of the result of subtraction;

transforming device operable to transform the image data of the blockoutputted from the first adding device into coefficient data of apredetermined transform domain;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of the block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data and scan method of a most efficient prediction blockamong the coefficient data of the plurality of prediction blocks formedby the predicting device and transmit an identifier indicating theselected prediction block and scan method in an indication bit form toan image predictive decoding apparatus;

second adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of the prediction error of the result of subtraction;

quantizing device operable to quantize the coefficient data of theprediction error outputted from the second adding device;

scanning device operable to execute a scan process on the coefficientdata of the prediction error from the quantizing device according to thescan method determined by the determining device and outputting thecoefficient data of the prediction error obtained after the scanprocess;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error obtained after the scan processoutputted from the scanning device and transmitting the codedcoefficient data of the prediction error to the image predictivedecoding apparatus;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error from the quantizing device and outputtingthe coefficient data of the restored block;

third adding device operable to add the coefficient data of theprediction block outputted from the determining device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby output the coefficient data of the restoredblock and storing the data into the block memory;

inverse transforming device operable to inverse transform thecoefficient data of the block outputted from the third adding device,thereby generating image data of the restored block; and

fourth adding device operable to add the image data of the predictionerror of the motion-compensated block outputted from the motioncompensating device to the image data of the restored block from theinverse transforming device, thereby outputting the image data of therestored block to the compensating device.

Still further, according to the eighteenth aspect of the presentinvention, there is provided an image predictive coding apparatuscomprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

compensating device operable to execute a motion compensating process onthe image data of an inputted block, thereby generating and outputtingimage data of a prediction error of a motion-compensated block;

first adding device operable to subtract the image data of theprediction error of the block outputted from the compensating devicefrom the image data of the block outputted from the sampling device,thereby outputting image data of the block of the result of subtraction;

transforming device operable to transform the image data of the blockoutputted from the first adding device into coefficient data of apredetermined transform domain;

quantizing device operable to quantize the coefficient data of thetransform domain from the transforming device;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of the block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data and scan method of a most efficient prediction blockamong the coefficient data of the plurality of prediction blocks formedby the predicting device and transmit an identifier indicating saidselected prediction block and scan method in an indication bit form toan image predictive decoding apparatus;

second adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputcoefficient data of the prediction error of the result of subtraction;

scanning device operable to execute a scan process on the coefficientdata of the prediction error from the second adding device according tothe scan method determined by the determining device and output thecoefficient data of the prediction error obtained after the scanprocess;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error obtained after the scan processoutputted from the scanning device and transmitting the codedcoefficient data of the prediction error to the image predictivedecoding apparatus;

third adding device operable to add the coefficient data of theprediction error from the second adding device to the coefficient dataof the prediction block outputted from the determining device to therebyrestore and output the coefficient data of the quantized current blockand storing the data into the block memory;

inverse quantizing device operable to inverse quantize the coefficientdata of the current block outputted from the third adding device andoutput the resulting data;

inverse transforming device operable to inverse transform thecoefficient data of the current block from the inverse quantizingdevice, thereby generating image data of the restored block; and

fourth adding device operable to add the image data of the predictionerror of the motion-compensated block outputted from the motioncompensating device to the image data of the restored block from theinverse transforming device, thereby outputting the image data of therestored block to the compensating device.

According to the nineteenth aspect of the present invention, there isprovided an image predictive decoding apparatus provided incorrespondence with the image predictive coding apparatus of thefifteenth aspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by the extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error;

inverse scanning device operable to execute an inverse scan process onthe coefficient data of the prediction error outputted from the decodingdevice based on the scan method indicated by the indication bitextracted by the extracting device and outputting the coefficient dataof the prediction error obtained after the inverse scan process;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error obtained after the inverse scan processoutputted from the scanning device and outputting the resulting data;

third adding device operable to add the coefficient data of theprediction block outputted from the further predicting device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby restore and output the coefficient data ofthe current block at the present timing and storing the data into theblock memory; and

further inverse transforming device operable to inverse transform thecoefficient data of the current block outputted from the third addingdevice and outputting the image data of the restored current block.

Also, according to the twentieth aspect of the present invention, thereis provided an image predictive decoding apparatus provided incorrespondence with the image predictive coding apparatus of thesixteenth aspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by the extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error,

inverse scanning device operable to execute an inverse scan process onthe coefficient data of the prediction error outputted from the decodingdevice based on the scan method indicated by the indication bitextracted by the extracting device and output the coefficient data ofthe prediction error obtained after the inverse scan process;

third adding device operable to add the coefficient data of theprediction block outputted from the predicting device to the coefficientdata of the prediction error outputted from the inverse scanning deviceto thereby restore and output the coefficient data of the current blockat the present timing and storing the data into the block memory,

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error outputted from the third adding device andoutput the resulting data; and

further inverse transforming device operable to inverse transform thecoefficient data of the current block outputted from the inversequantizing device and output the image data of the restored currentblock.

Further, according to the twenty-first aspect of the present invention,there is provided an image predictive decoding apparatus provided incorrespondence with the image predictive coding apparatus of theseventeenth aspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by the extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error,

inverse scanning device operable to execute an inverse scan process onthe coefficient data of the prediction error outputted from the decodingdevice based on the scan method indicated by the indication bitextracted by the extracting device and outputting the coefficient dataof the prediction error obtained after the inverse scan process;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error obtained after the inverse scan processoutputted from the inverse scanning device and output the resultingdata;

third adding device operable to add the coefficient data of theprediction block outputted from the further predicting device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby restore and output the coefficient data ofthe current block at the present timing and storing the data into theblock memory;

further inverse transforming device operable to inverse transform thecoefficient data of the current block outputted from the third addingdevice and output the image data of the restored current block;

further compensating device operable to execute a motion compensatingprocess on the image data of the current block outputted from thefurther inverse transforming device, thereby outputtingmotion-compensated prediction error data; and

fifth adding device operable to subtract the motion-compensatedprediction error data outputted from the further compensating devicefrom the image data of the current block outputted from the furtherinverse transforming device, thereby outputting the image data of therestored block of the result of subtraction.

Still further, according to the twenty-second aspect of the presentinvention, there is provided an image predictive decoding apparatusprovided in correspondence with the image predictive coding apparatus ofthe eighteenth aspect of the present invention, comprising:

extracting device operable to extract the indication bit from receiveddata received from the image predictive coding apparatus;

a block memory for storing therein coefficient data of the restoredblock;

further predicting device operable to generate and output coefficientdata of a prediction block for the coefficient data of the current blockat the present timing included in the received data by device of thecoefficient data of the block which has been previously restored andstored in the block memory based on the prediction block indicated bythe indication bit extracted by the extracting device;

decoding device operable to decode the received data in an entropydecoding manner and outputting the decoded coefficient data of theprediction error;

inverse scanning device operable to execute an inverse scan process onthe coefficient data of the prediction error outputted from the decodingdevice based on the scan method indicated by the indication bitextracted by the extracting device and output the coefficient data ofthe prediction error obtained after the inverse scan process;

third adding device operable to add the coefficient data of theprediction block outputted from the predicting device to the coefficientdata of the prediction error outputted from the inverse scanning deviceto thereby restore and output the coefficient data of the current blockat the present timing and storing the data into the block memory;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error outputted from the third adding device andoutput the resulting data;

further inverse transforming device operable to inverse transforming thecoefficient data of the current block outputted from the inversequantize device and output the image data of the restored current block;

further compensating device operable to execute a motion compensatingprocess on the image data of the current block outputted from thefurther inverse transforming device, thereby outputtingmotion-compensated prediction error data; and

fifth adding device operable to subtract the motion-compensatedprediction error data outputted from the further compensating devicefrom the image data of the current block outputted from the furtherinverse transforming device, thereby outputting the image data of therestored block of the result of subtraction.

Also, according to the twenty-third aspect of the present invention,there is provided an image predictive coding method including stepsobtained by replacing the device of the above-mentioned image predictivecoding apparatus.

Further, according to the twenty-fourth aspect of the present invention,there is provided an image predictive decoding method including stepsobtained by replacing the device of the above-mentioned image predictivedecoding apparatus.

Also, according to the twenty-fifth aspect of the present invention,there is provided a recording medium in which a program including thesteps of the above-mentioned image predictive coding method.

Further, according to the twenty-sixth aspect of the present invention,there is provided a recording medium in which a program including thesteps of the above-mentioned image predictive decoding method.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing a construction of an image predictivecoding apparatus according to a first preferred embodiment of thepresent invention;

FIG. 2 is a schematic view in a case where an input image inputted tothe image predictive coding apparatus of FIG. 1 is divided into 8×8blocks;

FIG. 3 is a schematic view in a case where an input image inputted tothe image predictive coding apparatus of FIG. 1 is divided intotriangular regions;

FIG. 4 is a block diagram showing a construction of a first preferredembodiment of a prediction signal generator for use in the imagepredictive coding apparatus of FIG. 1;

FIG. 5 is a block diagram showing a construction of a second preferredembodiment of a prediction signal generator for use in the imagepredictive coding apparatus of FIG. 1;

FIG. 6 is a block diagram showing a construction of a third preferredembodiment of a prediction signal generator for use in the imagepredictive coding apparatus of FIG. 1;

FIG. 7 is a block diagram showing a construction of a fourth preferredembodiment of a prediction signal generator for use in the imagepredictive coding apparatus of FIG. 1;

FIG. 8 is a block diagram showing a construction of an image predictivecoding apparatus according to a second preferred embodiment of thepresent invention;

FIG. 9 is a schematic view showing an example of an input image which isinputted to the image predictive coding apparatuses of FIG. 1 and FIG. 8and includes a significant pixel;

FIG. 10 is a schematic view showing an example of an input image whichis inputted to the image predictive coding apparatuses of FIG. 1 andFIG. 8 and includes a significant pixel;

FIG. 11 is a schematic view showing an example of an input image whichis inputted to the image predictive coding apparatuses of FIG. 1 andFIG. 8 and includes an insignificant pixel;

FIG. 12 is a block diagram showing a construction of an image predictivedecoding apparatus according to a third preferred embodiment of thepresent invention;

FIG. 13 is a block diagram showing a construction of an image predictivedecoding apparatus according to a fourth preferred embodiment of thepresent invention;

FIG. 14 is a block diagram showing a construction of a prior art imagepredictive coding apparatus;

FIG. 15 is a schematic view of an image for explaining an adaptive DCTtransform domain for intra-frame prediction;

FIG. 16 is a block diagram showing a construction of an image predictivecoding apparatus according to a fifth preferred embodiment of thepresent invention;

FIG. 17 is a block diagram showing a construction of an image predictivecoding apparatus according to a sixth preferred embodiment of thepresent invention;

FIG. 18 is a block diagram showing a construction of DCT transformdomain prediction circuits of FIG. 16 and FIG. 17;

FIG. 19 is a schematic view of an image showing an example of a DC/ACpredictive coding method of the DCT transform domain prediction circuitof FIG. 18;

FIG. 20 is a block diagram showing a construction of an image predictivedecoding apparatus according to a seventh preferred embodiment of thepresent invention;

FIG. 21 is a flowchart showing a DC/AC predictive decoding method of theimage predictive decoding apparatus of FIG. 20;

FIG. 22 is a block diagram showing a construction of a prior art imagepredictive coding apparatus;

FIG. 23 is a block diagram showing a construction of a prior art imagepredictive decoding apparatus;

FIG. 24 is a block diagram showing a construction of an image predictivecoding apparatus according to an eighth preferred embodiment of thepresent invention;

FIG. 25 is a block diagram showing a construction of an image predictivedecoding apparatus according to the eighth preferred embodiment of thepresent invention;

FIG. 26 is a schematic view of an image showing a constructions of amacro block and blocks of a frame as well as a block predicting method;

FIG. 27 is a schematic view of an image for explaining a horizontal scansequence to be used for a coefficient scan in the eighth preferredembodiment;

FIG. 28 is a schematic view of an image for explaining a vertical scansequence to be used for the coefficient scan in the eighth preferredembodiment;

FIG. 29 is a schematic view of an image for explaining a zigzag scansequence to be used for the coefficient scan in the eighth preferredembodiment;

FIG. 30 is a flowchart showing a mode determining process used in theeighth preferred embodiment; and

FIG. 31 is a schematic view of an image showing a relationship betweenblocks according to implicit mode determination of the eighth preferredembodiment.

BEST MODE FOR CARRYING OUT THE INVENTION

Preferred embodiments of the present invention will be described belowwith reference to the accompanying drawings.

First Preferred Embodiment Group

The first preferred embodiment group includes first through fourthpreferred embodiments.

First Preferred Embodiment

FIG. 1 is a block diagram showing a construction of an image predictivecoding apparatus according to a first preferred embodiment of thepresent invention.

In FIG. 1 are shown an input terminal 101, a first adder 102, an encoder103, an output terminal 106, a decoder 107, a second adder 110, a linememory 111 and a prediction signal generator 112.

The construction and operation of the image predictive coding apparatuswill be described below. Objective image data to be subjected to acoding process is inputted to the input terminal 101. In this case, theinputted image data is divided into a plurality of adjacent smallregions.

FIG. 2 shows the image of the inputted image data in a case where it isdivided into small regions of 8×8 samples. FIG. 3 shows the image of theinputted image data in a case where it is divided into triangular smallregions. The image data of the plurality of small regions aresuccessively coded when the image data of the objective small region tobe processed is inputted to the adder 102 via the input terminal 101 anda line 113. On the other hand, the prediction signal generator 112generates image data of an intra-frame prediction small region andoutputs the generated image data as image data of an optimum predictionsmall region to the adder 102 via a line 121.

The adder 102 subtracts the corresponding pixel value of the optimumprediction small region obtained from the prediction signal generator112 from the pixel value of the inputted image data of the target smallregion to be processed, thereby generating image data of a differencesmall region of the subtraction result and outputting the image data tothe encoder 103 for the execution of a compression coding process. Inthe present preferred embodiment, the encoder 103 is provided with a DCTtransformer 104 and a quantizing unit (Q) 105, and the image data of thedifference small domain is transformed into an image signal of afrequency region by the DCT transformer 104, so that DCT transformcoefficients are obtained. Then, the DCT transform coefficients arequantized by the quantizing unit 105. The quantized DCT coefficients ofthe small region are outputted to the output terminal 106 via a line116, further transformed into a string of a variable length or fixedlength codes and thereafter stored into a recording medium such as anoptical disk or transmitted via a communication line (not shown).

At the same time, the quantized DCT coefficients of the small region areinputted to the decoder 107. In this case, the decoder 107 is providedwith an inverse quantizing unit 108 and a DCT transformer 109 andrestores the inputted image data of the small region into image data ofan expanded difference small region. In the present preferredembodiment, the inputted DCT coefficients of the small region areinverse quantized by the inverse quantizing unit 108, and thereafter theinverse quantized DCT coefficients are transformed into an image signalin spatial domain by an inverse discrete cosine transformer (referred toas an inverse DCT transformer hereinafter) 109. The thus-obtained imagedata of the expanded difference small region is outputted to the adder110, and the adder 110 adds an optimum prediction image signal outputtedfrom the prediction signal generator 112 via the line 121 and a line 122to the image data of the expanded difference small region to therebygenerate image data of a reconstructed small region and store thereconstructed pixel values from the image data of the reconstructedsmall region into the line memory 111 for generating intra-frameprediction image signal. The prediction signal generator 112 generatesimage data of the intra-frame prediction small region as follows. Thatis, the prediction signal generator 112 generates a pixel value of thereconstructed image data adjacent to the image data of the target smallregion to be processed as a pixel value of the image data of theintra-frame prediction small region.

In FIG. 2, assuming that a block 200 is the target small region to beprocessed, then the pixel values of the adjacent reconstructed imagedata are a₀, a₁, a₂, . . . a₆, a₇, b₀, b₁, b₂, . . . , b₆, b₇. In FIG.3, assuming that a triangle 301 is the target small region to beprocessed, then the pixel values of the adjacent reconstructed imagedata are g₀, g₁, . . . , g₄, f₀, f₁, f₂, . . . , f₇, f₈. Assuming that atriangle 300 shown in FIG. 3 is the objective small region to beprocessed, the pixel values of the adjacent reconstructed image data aree₀, h₀, h₁, . . . , h₄. These pixel values are stored into the linememory 111. The prediction signal generator 112 makes access to the linememory 111 to read the pixel values of the adjacent image data as thepixel values of the image data of the intra-frame prediction smallregion.

FIG. 4 and FIG. 5 are block diagrams showing constructions of theprediction signal generator according to first and second preferredembodiments for use in the image predictive coding apparatus of FIG. 1.

In FIG. 4, the pixel values a₀, a₁, a₂, . . . , a₆, a₇ which areadjacent to one another in a horizontal direction with respect to thetarget small region to be processed are inputted from the line memory111 to the prediction signal generator 112, and a generator 401 insidethe prediction signal generator 112 generates image data 403 of theintra-frame prediction small region by repetitively outputting anidentical pixel, for example, eight times in the horizontal direction.In this case, the image data 403 of the intra-frame prediction smallregion is used in a case where no vertically adjacent pixel exists withrespect to the objective small region to be processed.

In FIG. 5, the pixel values b₀, b₁, b₂, . . . , b₆, b₇ be which areadjacent to one another in a vertical direction with respect to theobjective small region to be processed are inputted from the line memory111 to the prediction signal generator 112, and a generator 402 insidethe prediction signal generator 112 generates image data 404 of theintra-frame prediction small region by repetitively outputting a pixel,for example, eight times in the vertical direction. In this case, theimage data 404 of the intra-frame prediction small region is used in acase where no horizontally adjacent pixel exists with respect to theobjective small region to be processed. In a case where pixels which areadjacent both in the horizontal direction and the vertical directionexist, image data of the intra-frame prediction small region isgenerated as in a third preferred embodiment shown in FIG. 6.

FIG. 6 is a block diagram showing a construction of the third preferredembodiment of the prediction signal generator for use in the imagepredictive coding apparatus of FIG. 1.

In FIG. 6, the image data 403 of the intra-frame prediction small region(See FIG. 5) generated by the generator 401 and the image data 404 ofthe intra-frame prediction small region generated by the generator 402are inputted to an adder 500, and the adder 500 averages these twopieces of image data by dividing the sum of the inputted two pieces ofimage data by two. Thus, the adjacent reproduced pixels are repetitivelyoutputted by the generators 401 and 402 and the averaging computation ismerely executed by the adder 500, and therefore, the image data of theintra-frame prediction small region can be generated at high speed. Itis acceptable to generate the image data of the intra-frame predictionsmall region by linearly interpolating the pixel values of adjacent twopieces of image data.

FIG. 7 is a block diagram showing a construction of a fourth preferredembodiment of a prediction signal generator for use in the imagepredictive coding apparatus of FIG. 1.

In FIG. 7, the pixel values a₀, a₁, a₂, . . . , a₆, a₇ as which areadjacent to one another in a horizontal direction with respect to theobjective small region to be processed are inputted from the line memory111 to the generator 401, and the generator 401 generates image data ofa first intra-frame prediction small region by repetitively outputtingeach pixel in the horizontal direction. On the other hand, the pixelvalues b₀, b₁, b₂, . . . , b₆, b₇ which are adjacent to one another inthe vertical direction with respect to the objective small region to beprocessed are inputted from the line memory 111 to the generator 402,and the generator 402 generates image data of a second intra-frameprediction small region by repetitively outputting each pixel in thevertical direction. The image data of the first intra-frame predictionsmall region and the image data of the second intra-frame predictionsmall region are inputted to the adder 500, and image data of a thirdintra-frame prediction small region is generated by averaging these twopieces of image data.

On the other hand, the image data of the objective small region to beprocessed is inputted via a line 616 to error calculators 601, 602 and603. In this case, the above-mentioned image data of the firstintra-frame prediction small region and the image data of the objectivesmall region to be processed are inputted to the error calculator 601,and the error calculator 601 calculates a first absolute error which isthe absolute value of the error of those two pieces of image data andoutputs the absolute error to a comparator 604. The above-mentionedimage data of the second intra-frame prediction small region and theimage data of the target small region to be processed are inputted tothe error calculator 602, and the error calculator 602 calculates asecond absolute error which is the absolute value of the error of thosetwo pieces of image data and outputs the absolute error to thecomparator 604. Further, the above-mentioned image data of the thirdintra-frame prediction small region and the image data of the targetsmall region to be processed are inputted to the error calculator 603,and the error calculator 603 calculates a third absolute error which isthe absolute value of the error of those two pieces of image data andoutputs the absolute error to the comparator 604.

The comparator 604 compares the inputted three absolute errors with eachother, determines the one having the smallest absolute error andcontrols a switch 605 so as to output the image data of the intra-frameprediction small region corresponding thereto to the line 121. Thecomparator 604 simultaneously outputs an identifier for identifying theimage data of the first, second and third intra-frame prediction smallregions to the apparatus on the receiving side or the reproducing sidevia a line 615. With this identifier, the image data of the intra-frameprediction small region is uniquely determined on the receiving side orthe reproducing side. Thus by using the image data of the intra-frameprediction small region having the smallest error, a differential signalin the coding stage can be suppressed, thereby allowing the reduction inthe number of bits to be generated.

Second Preferred Embodiment

FIG. 8 is a block diagram showing a construction of an image predictivecoding apparatus according to a second preferred embodiment of thepresent invention, where the components similar to those of FIG. 1 aredenoted by the same reference numerals.

The image predictive coding apparatus shown in FIG. 8 is characterizedin that a motion detector 700, a motion compensator 701, an optimum modeselector 703 and a frame memory 702 are incorporated into the imagepredictive coding apparatus of FIG. 1.

The construction and operation of the image predictive coding apparatusof FIG. 8 will be described below.

In a manner similar to that of the first preferred embodiment, inputtedimage data of the target small region to be processed is inputted via aninput terminal 101 to an adder 102. The adder 102 subtracts the imagedata of the target small region to be processed from image data of anoptimum prediction small region inputted from an optimum mode selector703 via a line 121 and thereafter outputs the image data of thesubtraction result to an encoder 103. The encoder 103 outputs theinputted image data of the subtraction result via an output terminal 106while encoding the data in a compression coding manner. At the sametime, the encoder outputs the compression-coded image data of the smallregion to a decoder 107 to decode the data in an expansion decodingmanner and thereafter outputs the resulting data to an adder 110 to addthe expansion-decoded image data to the image data of the optimumprediction small region.

Then, in a manner similar to that of the first preferred embodiment,only the pixel value of the image data to be used for generating imagedata of an intra-frame prediction small region is stored into a linememory 111, while all the pixel values of the reconstructed image arestored into the frame memory 702.

When the image data of the next image is inputted via the input terminal101, the motion detector 700 receives the inputs of the image data ofthe target small region to be processed and the reconstructed image datastored in the frame memory 702, and the motion detector 700 detects themotion of the image by a block matching or similar method and outputs amotion vector via a line 705. The outputted motion vector is subjectedto, for example, variable length coding to be stored or transmitted (notshown) and simultaneously transmitted to the motion compensator 701. Themotion compensator 701 generates image data of a temporal predictionsmall region from the reconstructed image of the frame memory 702indicated by of the motion vector and outputs the same to the optimummode selector 703. The motion detecting process and the motioncompensating process include forward prediction, backward prediction andbidirectional prediction, and these methods are disclosed in, forexample, the specification of U.S. Pat. No. 5,193,004.

On the other hand, in a manner similar to that of the first preferredembodiment, the prediction signal generator 112 generates image data ofthe intra-frame prediction small region, outputs the data to the optimummode selector 703. Simultaneously outputs the image data of the targetsmall region to be processed is input to the optimum mode selector 703.The optimum mode selector 703 selects the image data having the smallesterror (e.g., the sum of the absolute values of differences obtainedevery pixel) with respect to the image data of the target small regionto be processed from the image data of the intra-frame prediction smallregion and the image data of a temporal prediction small region andoutputs the selected image data as image data of an optimum predictionsmall region to the adder 102. An identifier representing the predictionsmall region whose image data has been selected is outputted to betransmitted via a line 709 to the receiving side or the reproducingside.

As described above, there is no need for transmitting any inter-framemotion vector by introducing the intra-frame prediction to the imagedata coded in predictive mode. Therefore, the number of bits can befurther reduced.

The first and second preferred embodiments are in the case wheresignificant pixels exist throughout the entire image. There is a casewhere a significant pixel and an insignificant pixel exist in a screen.For example, in the case of an image picked up by chromakey, pixelsexpressing the subject are significant, and pixels expressing a regionin blue or the like which serves as a background are insignificantpixels. By transmitting the texture and shape of the significant objectthrough coding, reproduction and display of individual objects can beachieved. When generating image data of the intra-frame prediction smallregion by the prediction signal generator 112 for such an input image,insignificant pixel values cannot be used.

FIG. 9 through FIG. 11 show schematic views of input images havingsignificant pixels and insignificant pixels. In the present preferredembodiment, a shape signal is used for expressing whether or not thepixel is significant. The shape signal is compression-coded by apredetermined method and transmitted to the receiving side or thereproducing side. As a method for coding a shape, a chain coding methodand the like can be used. A compressed shape signal is reproduced bybeing expanded again, and the reproduced shape signal is used forgenerating an intra-frame prediction image signal as follows.

In FIG. 9, a shape curve 800 is the boundary line and the directionindicated by arrow is the inside of an object, and the image data of theinside of the object is comprised of significant pixels. Among thereproduced pixels adjacent to a target small region 802 to be processed,b₄, b₅, b₆ and b₇ are the significant pixels, and only these pixelvalues are repetitively used as the pixel values of the intra-frameprediction small region of the objective small region 802 to beprocessed.

In FIG. 10, a shape curve 804 is the boundary line, and the directionindicated by arrow is the inside of an object, and the image data of theinside of the object is comprised of significant pixels. Among thereproduced pixels adjacent to a target small region 805 to be processed,a₄, a₅, a₆, and a₇ are the significant pixels, and only these pixelvalues are repetitively used as the pixel values of the intra-frameprediction small region of the objective small region 805 to beprocessed.

Further, in FIG. 11, a curve 808 is the boundary line, and the directionindicated by arrow is the inside of an object, and the image data of theinside of the object is comprised of significant pixels. Among thereproduced pixels adjacent to a target small region 810 to be processed,a₅, a₆ and a₇ b₆ and b₇ are the significant pixels, and only these pixelvalues are repetitively outputted. In a place where two pixel valuesoverlap each other, a value obtained by averaging those pixel values isused as the pixel value of the intra-frame prediction small region ofthe objective small region 810 to be processed.

In FIG. 11, for example, the value of a pixel z₇₇ of the objective smallregion 810 to be processed is the average value of a₇ and b₇. In a placewhere no pixel exists, the average value of horizontally and verticallyadjacent two pixel values is taken. For example, the value of a pixelz₁₄ is the average value of a₅ and b₄. Thus, the image data of theintra-frame prediction small region of an image having an arbitraryshape is generated.

Although the above-mentioned preferred embodiment has been described onthe basis of a small region divided in a square shape, the presentinvention is not limited to this, and the screen may be divided intotriangular small regions. In this case, the image processing is executedin a similar manner.

As another preferred embodiment, it is acceptable to obtain the averagevalue by device of only the significant pixel values and use the averagevalue as the pixel value of the intra-frame prediction small region.Concretely, in FIG. 9, the average value of the pixels b₄, b₅, b₆ and b₇is calculated, and the calculated average value is used as the pixelvalue of the intra-frame prediction small region. In FIG. 10, theaverage value of the pixels a₄, a₅, a₆ and a₇ is calculated, and thecalculated average value is used as the pixel value of the intra-frameprediction small region. In FIG. 11, the average value of the pixels a₅,a₆, a₇, b₄, b₅, b₆ and b₇ is calculated, and it is used as the pixelvalue of the intra-frame prediction small region.

Third Preferred Embodiment

FIG. 12 is a block diagram showing a construction of an image predictivedecoding apparatus according to a third preferred embodiment of thepresent invention.

In FIG. 12 are shown an input terminal 901, a data analyzer 902, adecoder 903, an adder 906, an output terminal 907, a controller 908, amotion compensator 909, a prediction signal generator 910, a line memory911 and a frame memory 912.

The construction and operation of the image predictive decodingapparatus of FIG. 12 will be described below. In FIG. 12,compression-coded image data is inputted to the data analyzer 902. Thedata analyzer 902 analyzes the inputted image data and outputs imagedata of a compressed difference small region to the decoder 903 via aline 915, outputs a control signal to the controller 908 via a line 926and further outputs the above-mentioned motion vector (only when itexists) to the motion compensator 909. The decoder 903 is provided withan inverse quantizing unit 904 and an inverse DCT transformer 905 andexpands the compressed image data of a difference small region torestore the data into image data of an expanded difference small region.

In the present preferred embodiment, the compressed image data of thedifference small region is inverse quantized by the inverse quantizingunit 904, and thereafter image data of a frequency domain obtained afterthe inverse quantization is transformed into image data of the spatialdomain by the inverse DCT transformer 905. The image data of theexpanded difference small region obtained after the transform isinputted to the adder 906, and the adder 906 adds the inputted imagedata of the expanded difference small region to image data of an optimumprediction small region transmitted from a motion compensator 923 or aprediction signal generator 922 via a switch 913 and a line 924, therebygenerating image data of a reproduction small region of the additionresult. The adder 906 outputs the reconstructed image data to the outputterminal 907 via a line 917 and simultaneously stores the data into theframe memory 912. The pixel values of the image data for use ingenerating an image of an intra-frame prediction small region are storedinto the line memory 911.

The image data of the optimum prediction small region is determined bythe controller 908 on the basis of a control signal from the dataanalyzer 902, so that the switching of the switch 913 is controlled. Ina case where the image data of the intra-frame prediction small regionis selected by the controller 908, the switch 913 connects the line 924to the line 922, so that the prediction signal generator 910 makesaccess to the line memory 911 in response to the control signal from thecontroller 908 to output the adjacent reproduction pixel value as thepixel value in the intra-frame prediction small region. The detail ofthe operation of the prediction signal generator 910 has been describedin detail with reference to FIG. 4, FIG. 5 and FIG. 6. In a case wherethe image data of a time prediction small region is selected by thecontroller 908, the switch 913 connects the line 924 to the line 923, sothat the motion compensator 909 executes a motion compensating processon the image data from the frame memory 912 on the basis of a motionvector to be transmitted from the data analyzer 902 via a line 925 inresponse to the control signal from the controller 908, therebygenerating image data of the time prediction small region and outputtingthe data to the adder 906 via the switch 913 and the line 924.

Fourth Preferred Embodiment

FIG. 13 is a block diagram showing a construction of an image predictivedecoding apparatus according to a fourth preferred embodiment of thepresent invention. In FIG. 13, the components similar to those of FIG.12 are denoted by the same reference numerals. The image predictivedecoding apparatus of FIG. 13 is characterized in that a shape decoder990 is incorporated into the basic construction of the image predictivedecoding apparatus of FIG. 12. The basic operation of the imagepredictive decoding apparatus of FIG. 13 is the same as that of FIG. 12,and therefore, only the different operation will be described in detailbelow.

In the present preferred embodiment, the compression-coded image dataincludes compression-coded shape data. The data analyzer 902 extractsthe shape data and outputs the same to the shape decoder 990, and inresponse to this, the shape decoder 990 reproduces a shape signal in anexpanding manner. The reconstructed shape signal is transmitted to thereceiving side or the reproducing side and simultaneously inputted tothe prediction signal generator 910. The prediction signal generator 910generates image data of an intra-frame prediction small region asdescribed with reference to FIG. 9 through FIG. 11 based on thisreconstructed shape signal. Thus, the image data of the intra-frameprediction small region of the image having an arbitrary shape isgenerated, and the image data can be decoded and reproduced on thereceiving side or the reproducing side.

The third and fourth preferred embodiments are characterized by theprovision of the line memory 911. In the absence of the line memory 911,access must be made from the frame memory 912 to a pixel for generatingthe image data of the intra-frame prediction small region. For thepurpose of generating a prediction signal by the pixel of the adjacentsmall region, it is required to execute write and read operations athigh speed on the frame memory. By providing a special line memory or abuffer, the image data of the intra-frame prediction small region can begenerated at high speed without using any high-speed frame memory.

In the above preferred embodiment, the average value of the plurality ofpixel values may be a specifically weighted average value.

As described above, according to the first preferred embodiment group ofthe present invention, by merely using the reconstructed pixel valueadjacent to the image data of the target small region to be processed asthe pixel value of the intra-frame prediction signal, a high-accuracyprediction signal can be simply generated with a smaller amount ofcomputation than in the prior arts, and this can produce a unique effectthat the number of bits of the intra-frame coding can be reduced. Theline memory 911 is provided for storing therein the reproduced pixelvalue for use in generating the intra-frame prediction signal, andtherefore, access can be made at high speed to the pixel value, therebyallowing the intra-frame prediction signal to be generated at highspeed.

Second Preferred Embodiment Group

The second preferred embodiment group includes fifth to seventhpreferred embodiments.

In view of the problems of the prior art, the inventors of thisinvention have discovered that the image coding efficiency can befurther improved by removing not only the redundancy between two imagesor the insides of two blocks in one image but also the redundancybetween two blocks in one image.

The inventors have discovered that the DCT transform coefficientslocated in the same positions of adjacent blocks closely resemble eachother in many cases. The inventors have also discovered that theresemblance is particularly great in a case where the original imagecompositions of two blocks closely resemble each other or when anidentical image pattern of, for example, a straight line, an angle andso forth is included. Identical information device a redundancyaccording to an information theory.

This kind of redundancy existing in the DCT transform domain over ablock can be removed or remarkably reduced by adaptive intra-prediction(intra-frame prediction) from a previous block. Then, the following VLCentropy coding process can achieve a higher coding efficiency by virtueof the small entropy of prediction. As a result of prediction of thisDCT transform domain, input of redundant data to a VLC entropy codingcircuit can be remarkably reduced. Accordingly, there can be expected agreat saving of bits. Therefore, the image quality of the coded imagedata is definitely improved.

The present preferred embodiment of the present invention provides asystem for accurately predicting DCT transform coefficients from anotherblock. This system is able to remove the redundancy existing over theadjacent block, further reduce the entropy of the quantized DCTtransform coefficients and consequently reduce the number of bitsrequired for coding the DCT transform coefficients.

The DCT transform coefficients of the target current block to beprocessed at the present timing (referred to as a current blockhereinafter) can be predicted from the DCT transform coefficients at thesame position in the preceding adjacent block. The adjacent block hasbeen already decoded in the processing stage. That is, according to thefirst DC coefficient in one of previously decoded adjacent blocks, afirst DC coefficient is predicted. A second coefficient AC1 is predictedfrom the second coefficient AC1 in the same decoded block. The sameoperation will be executed subsequently. By using this method, severalpredicted blocks can be obtained from the decoded blocks locatedupwardly on the left-hand side, diagonally on the left-hand side,upwardly diagonally on the right-hand side and upwardly with respect tothe DCT transform block that is coded at the present timing. Thesepredicted blocks are checked by being subjected to the actual entropycoding. Then, a prediction block having a smaller number of bits isselected, thereafter subjected to the entropy coding and transmitted tothe image predictive decoding apparatus on the receiving side or thereproducing side together with an additional indication bit. The imagepredictive decoding apparatus is informed of the adjacent block fromwhich the current block is predicted.

A method according to the present preferred embodiment of the presentinvention can predict the DCT transform coefficients of the currentblock. The DCT transform coefficients generally has high correlationwith the DCT transform coefficients of another adjacent block. Thereason for this is that the DCT transform tends to give an identicalvalue or an identical distribution of the DCT transform coefficients toa similar block image.

Inputted image data of an intra-frame or temporarily predicted frame isnormally subjected first to a block-based DCT transform process. Afterthe DCT transform coefficients of the current block are obtained, a DCTtransform domain predicting process can be executed before quantizationor after quantization.

As shown in FIG. 15, the DCT transform coefficients of the current blockcan be predicted from blocks that are the already decoded blocks andadjacent blocks, i.e., an upper left-hand block B1, an upper block B2,an upper right-hand block B3 and a left-hand block B4. A predicted blockcan be obtained by subtracting all the DCT transform coefficients of thecurrent block from all the DCT transform coefficients of the precedingadjacent block located in the same position. The block can also beobtained by partially subtracting the DCT transform coefficients insteadof all the DCT transform coefficients.

The predicted DCT transform coefficients of different predicted blocksare quantized if the prediction is executed before the quantization.Then, the DCT transform coefficients are subjected to the entropy codingprocess. The entropy coding process is identical to that of the imagepredictive coding apparatus, and it is checked which predicted block isused as a low order bit.

The prediction block which uses the low order bit is selected, and theselected prediction block is coded in an entropy coding manner togetherwith an indication bit for informing the image predictive decodingapparatus of the prediction determination.

In the image predictive decoding apparatus, the block predicted by theindication bit is decoded. That is, the DCT transform coefficientspredicted for one block are decoded in an inverse entropy decodingmanner, and thereafter the DCT transform coefficients of the block areobtained by adding reference DCT transform coefficients of the adjacentblock which is decoded before being expressed by the indication bit tothe above decoded DCT transform coefficients. Finally, an inverse DCTtransform process is applied to the restored DCT transform coefficientsof each block, so that decoded image data is obtained.

The present preferred embodiment of the present invention provides animage coding apparatus capable of reducing the redundancy of the othertypes existing in the DCT transform domain over the adjacent block inaddition to the spatial redundancy which is normally removed by atransform such as DCT transform, the redundancy which is removed betweenframes by motion detection and compensation and the statisticalredundancy which is removed through the entropy coding amongquantization transform coefficients inside a block.

As is apparent from FIG. 14 which shows a prior art image predictivecoding apparatus, the image predictive coding apparatus which isgenerally used for the prior art image coding (e.g., MPEG) is providedwith a block sampling unit 1001, a DCT transform unit 1004, a quantizingunit 1005 and an entropy coding unit 1006.

According to the intra-frame coding (coding inside a frame), an inputtedimage signal is subjected first to a block sampling process. Next, a DCTtransform process is directly executed. Subsequently, a quantizingprocess and an entropy coding process are executed. On the other hand,according to the inter-frame coding (prediction frame coding), the imagedata of the objective frame to be processed at the present timing issubjected to the processes of a motion detecting unit 1002 and a motioncompensating unit 1003 after a block sampling process and further to aDCT transform process. Further, a quantizing process and an entropycoding process are executed.

In this case, the quantized value is coded in an entropy coding mannerin the entropy coding unit 1006, and code data is outputted. The entropycoding is a system for considerably reducing the total amount of codesso as to make coding approach the entropy or the average informationamount by assigning a short code to a value which frequently occurs andassigning a long code to a value which scarcely occurs. This is areversible coding. A variety of systems are proposed for the entropycoding, and Huffman coding is used in a baseline system. The Huffmancoding method differs depending on a quantized DC coefficient value andan AC coefficient value. That is, the DC coefficient exhibits theaverage value of 8×8 pixel block, however, the average value of adjacentblocks often has a similar value in a general image. Therefore, theentropy coding is executed after taking differences between a block andthe preceding block. With this arrangement, values concentrate in thevicinity of zero, and therefore, the entropy coding becomes effective.The AC coefficients are subjected to, for example, a zigzag scan,thereby transforming two-dimensional data into one-dimensional data.Further, AC coefficients including, in particular, high-frequencycomponents frequently yield zero, and therefore, the entropy coding isexecuted by a combination of AC coefficients value having a value otherthan zero and the number (run length) of zeros before it.

A rate controller 1007 feeds back the bit used for the previously codedblock, controls the processing in the quantizing unit 1005 and adjuststhe code bit rate. In this case, the rate controller 1007 controls thecode bit rate so as to assign different amounts of bits to object datacoded on the basis of the coded unit properties and usable bits as wellas to each frame and each coded block. The inverse quantizing processand the inverse DCT transform process are executed in the units 1008 and1009 which serve as parts of the local decoder. The image data decodedby the local decoder is stored into a local decoding frame memory 1010and used for a motion detecting process. A unit 1011 is a referenceframe memory for saving the preceding original frame for motiondetection. Finally, a bit stream is outputted from the entropy encodingunit 1006 and transmitted to the image predictive decoding apparatus onthe receiving side or the reproducing side.

FIG. 15 is a schematic view of an image for explaining an adaptive DCTtransform domain for intra-frame prediction.

FIG. 15 shows an arrangement that four 8×8 DCT transform blocks areconstituting a macro block in the DCT transform domain. In this case, B0indicates a current block at the present timing having 8×8 DCT transformcoefficients. B2 indicates an already decoded block located adjacentlyon the upper side. B1 and B3 indicate already decoded two blocks locatedadjacently diagonally on the upper side. B4 indicates the precedingblock located adjacently on the left-hand side. FIG. 15 shows the factthat the block having DCT transform coefficients can be predicted fromthe plurality of adjacent decoded blocks having the 8×8 DCT transformcoefficients.

Attention must be paid to the fact that the block used for theprediction of the current block is always different. Therefore, adetermination is executed on the basis of a least bit use rule, and thedetermination is adaptively given to different blocks on the imagepredictive decoding apparatus side. The image predictive decodingapparatus is informed of the determination by an indication bit. In thiscase, the least bit use rule is used for determining the predictingmethod among a plurality of different predicting methods. After eachpredicting method is applied, the amount of bits for use in coding theblock is counted. As a result, the method which achieves the leastamount of bits is selected as the predicting method to be used.

It is to be noted that the DCT transform domain prediction can beexecuted after or before the quantization.

Fifth Preferred Embodiment

FIG. 16 is a block diagram showing a construction of an image predictivecoding apparatus according to a fifth preferred embodiment of thepresent invention. The image predictive coding apparatus shown in FIG.16 is characterized in that the DCT transform domain predicting processis executed after the quantizing process.

In FIG. 16, an inputted image signal is subjected first to blocksampling by a block sampling unit 1012. Then, according to theintra-frame coding, the sampled block image data is inputted to a DCTtransform unit 1014 through an adder 1013 without undergoing the processin the adder 1013. On the other hand, according to the prediction framecoding, the adder 1013 subtracts motion detection image data outputtedfrom a motion detecting and compensating unit 1025 from the sampledblock image data and outputs the image data of the subtraction result tothe DCT transform unit 1014. Then, the DCT transform process is executedin the unit 1014, and thereafter the quantizing process is executed in aunit 1015.

The DCT transform domain predicting process is executed in a unit 1017,while the reference numeral 1018 denotes a block memory for storingtherein previously decoded block for prediction. An adder 1016 subtractsthe decoded adjacent block outputted from the DCT transform domainpredicting unit 1017 from the DCT transform block at the present timingoutputted from the quantizing unit 1015. The determination of the codedadjacent block is executed in the DCT transform domain predicting unit1017. Finally, the predicted DCT transform block is subjected to anentropy VLC coding process by a unit 1020, and the coded bits arewritten into a bit stream.

An adder 1019 restores the DCT transform block at the present timing byadding the preceding adjacent block used for prediction to theprediction block. Then, the restored DCT transform block is subjected toan inverse quantizing process and an inverse DCT transform process inthe units 1021 and 1022, respectively. The image data which is locallydecoded and belongs to the block outputted from the inverse DCTtransform unit 1022 is inputted to an adder 1023. The adder 1023 obtainsreconstructed image data by adding the image data of the preceding frameto the image data of the restored block, and the data is stored into aframe memory 1024. A motion detecting and compensating process isexecuted in a unit 1025. The frame memory 1024 is used for storing thepreceding frame for the motion detecting and compensating process.

Sixth Preferred Embodiment

FIG. 17 is a block diagram showing a construction of an image predictivecoding apparatus according to a sixth preferred embodiment of thepresent invention. The image predictive coding apparatus of FIG. 17 ischaracterized in that the DCT transform domain predicting process isexecuted before the quantizing process. An inputted image signal issubjected to a block sampling process in a unit 1026. Then, an adder1027 executes a subtracting process for prediction frame coding, and theimage data of the subtraction result is outputted to an entropy VLCcoding unit 1034 and an inverse quantizing unit 1033 via a DCT transformunit 1028, an adder 1029 and a quantizing unit 1030.

A block memory 1032 stores therein the image data of the preceding blockfor the DCT transform domain predicting process of a unit 1031. Theimage data of the DCT transform block at the present timing outputtedfrom the DCT transform unit 1028 is subtracted from the preceding DCTtransform block selected by the DCT transform domain predicting unit1031 by the adder 1029 according to the least bit use rule. The imagedata of the DCT transform block of the subtraction result is quantizedby the quantizing unit 1030 and thereafter outputted to the inversequantizing unit 1033 and the entropy VLC coding unit 1034. The inversequantizing unit 1033 restores the inputted quantized image data of theDCT transform block through inverse quantization and outputs theresulting data to an adder 1055. The adder 1055 adds the image data ofthe restored DCT transform block to the image data of the preceding DCTtransform block from the DCT transform domain predicting unit 1031,stores the image data of the addition result of the preceding block intothe block memory 1032 and outputs the data to an inverse DCT transformunit 1036.

The inverse DCT transform unit 1036 executes an inverse DCT transformprocess on the image data of the preceding block inputted from an adder1035 and outputs the restored image data obtained after the transformprocess to an adder 1037. The adder 1037 adds the image data of thepreceding frame outputted from the motion detecting and compensatingunit 1025 to the restored image data outputted from the inverse DCTtransform unit 1036, temporarily stores the image data of the additionresult into a frame memory 1038 and thereafter outputs the data to themotion detecting and compensating unit 1025.

B1. General Description of Mode Determination

FIG. 18 is a block diagram showing a construction of DCT transformdomain prediction circuits 1017 and 1031 of FIG. 16 and FIG. 17.

In FIG. 18, the reference numeral 1040 denotes a block memory forstoring therein the image data of the preceding adjacent block forprediction. The objective current block to be processed at the presenttiming is inputted to a unit 1041, and the unit 1041 subtracts theinputted image data of the current block from the preceding adjacent DCTtransform block stored in the block memory 1040, thereby obtaining theimage data of predictive DCT transform blocks of the following fourtypes:

(a) No-Pred block denoted by 1042,

(b) Up-Pred block denoted by 1043,

(c) Left-Pred block denoted by 1044, and

(d) Other-Pred block denoted by 1045.

In this case, the above four types of blocks are expressed by two bits.That is, for example, “00” expresses the No-Pred block, “01” expressesthe Up-Pred block “10” expresses the Left-Pred block and “11” expressesthe Other-Pred block.

The No-Pred block is the image data itself of the DCT transform block atthe present timing in the absence of prediction. The Up-Pred blockrepresents the image data of a prediction block obtained in a case wherethe block used for the prediction is the upwardly adjacent DCT transformblock B2. The Left-Pred block represents the image data of a predictionblock obtained in a case where the block used for the prediction is theleftwardly adjacent DCT transform block B4. The Other-Pred blockrepresents the image data of a prediction block obtained in a case whereprediction is effected only on the DC coefficient. In the case of theOther-Pred block, two types of predicting methods exist. That is, anUp-DC-Pred (1046) represents the image data of a prediction blockobtained in a case where a prediction is effected on only the DCcoefficient based on the upwardly adjacent DCT transform block B2. ALeft-DC-Pred (1047) represents the image data of a prediction blockobtained in a case where a prediction is effected on only the DCcoefficient based on the leftwardly adjacent DCT transform block B4. Inthese two cases, an additional one bit is required for designation. Thebit is used so that, for example, “0” expresses the Up-DC-Pred (1046)and “1” expresses the Left-DC-Pred (1047).

It is possible to make a prediction based on the diagonally adjacentblocks B1 and B3. However, the prediction result is not as good as thatmade on the blocks located upwardly or on the left-hand side, andtherefore, they are not used in the present invention.

All the predicted blocks are inspected and checked by being subjected tothe actual entropy coding process in a unit 1048. The bits used fordifferent predicted blocks are subjected to a comparison in a unit 1049.Finally, a unit 1050 determines the DCT transform block predicted on thebasis of the least bit use rule and outputs the predicted DCT transformblock together with an indication bit. That is, the predicted DCTtransform block having the minimum number of bits is selected.

B2. Execution of Mode Determination

FIG. 19 is a schematic view of an image showing an example of a DC/ACpredictive coding method of the DCT transform domain prediction circuitof FIG. 18.

In FIG. 19, a subset of the previously defined DC/AC-predicted imagedata for actual use is shown. A current block 1101 is an 8×8 blocklocated on the upper left-hand side of a current macro block, while acurrent block 1102 is an 8×8 block located on the upper right-hand sideof the current macro block. The reference characters A and B denote 8×8blocks adjacent to the current block 1101. Highlighted upper row andleft column of the current block 1101 are predicted from the samepositions of adjacent blocks A and B. That is, the top row of thecurrent block 1101 is predicted from the top row of the block A locatedon the upper side of it, and the left column of the current block 1101is predicted from the left column of the block B located on theleft-hand side of it. According to a similar procedure, the currentblock 1102 is predicted from a block D located on the upper side of itand the current block 1 located on the left-hand side of it.

It is assumed that C(u,v) is the block to be coded, E_(i)(u,v) is aprediction error in the case of a mode i and A(u,v) and/or B(u,v) isobtained by subtracting a prediction value from each block. In actualimplementation, only the following three modes which appear mostfrequently as described in the above-mentioned section B1 are used.

(a) Mode 0: DC prediction only

E ₀(0,0)=C(0,0)−(A(0,0)+B(0,0))/2, E ₀(u,v)=C(u,v), u 0; v 0; v 0; u=0,. . . , 7; v=0, . . . , 7  (1)

(b) Mode 1: DC/AC prediction from block located on the upper side

E ₁(0,v)=C(0,v)−A(0,v), v=0, . . . , 7, E ₁(u,v)=C(u,v), u=1, . . . , 7;v=0, . . . , 7  (2)

(c) Mode 2: DC/AC prediction from block located on the left-hand side

E ₂(u,0)=C(u,0)−B(u,0), u=0, . . . 7, E ₂(u,v)=C(u,v), u=0, . . . , 7;v=1, . . . , 7.  (3)

Mode selection is executed by calculating the sum SAD_(modei) of theabsolute values of errors predicted for four luminance signal blocks ina macro block and selecting the mode having the minimum value.$\begin{matrix}\begin{matrix}{{{SAD}_{modei} = \quad {\sum\limits_{b}\left\lbrack {{E_{i}\left( {0,0} \right)} + {32 \cdot {\sum\limits_{u}{E_{i}\left( {u,0} \right)}}} + {32 \cdot {\sum\limits_{v}{E_{i}\left( {0,v} \right)}}}} \right\rbrack}},} \\{\quad {{i = 0},\ldots \quad,{2;{b = 0}},\ldots \quad,{3;u},{v = 1},\ldots \quad,7}}\end{matrix} & (4)\end{matrix}$

Mode determination can be executed depending on a difference inapplication targeted for varied coding bit rate on both a block base anda macro block base. The mode is coded with the variable-length codes ofthe following Table 1.

TABLE 1 VLC Table for DC/AC Mode Index DC/AC Prediction Mode VLC code 00 (DC Only) 0 1 1 (Vertical DC & AC) 10 2 2 (Horizontal DC/AC) 11

When executing a DC/AC prediction after quantization, the precedinghorizontally adjacent block or the vertically adjacent block generallyhas a varied quantization step to be used, and therefore, several sortsof weighting factors are required for scaling the quantized DCTtransform coefficients.

It is assumed that QacA is the quantized DCT transform coefficients ofthe block A (See FIG. 19) and QacB is the quantized DCT transformcoefficients of the block B (See FIG. 19). Assuming that QstepA is thequantization step to be used for quantizing the block A, then QstepB isthe quantization step to be used for quantizing the block B and QstepCis the quantization step to be used for quantizing the current block C.Therefore, the scaling equations are as follows:

Q′acA=(QacA×QstepA)/QstepC  (5)

Q′acB=(QacB×QstepB)/QstepC  (6)

where Q′acA is the DCT transform coefficients from the block A to beused for predicting the top row of the current block C, while Q′acB isthe DCT transform coefficients from the block B to be used forpredicting the left-hand column of the current block C.

Seventh Preferred Embodiment

FIG. 20 is a block diagram showing a construction of an image predictivedecoding apparatus according to a seventh preferred embodiment of thepresent invention.

In FIG. 20, the bit stream from the image predictive coding apparatus isinputted to an entropy VLD decoding unit 1051 and decoded in a variablelength decoding manner. The decoded image data is added to the imagedata of the preceding adjacent DCT transform block from a DCT transformdomain predicting unit 1053, thereby restoring the image data of the DCTtransform block. The preceding adjacent DCT transform block isidentified by an indication bit taken out of the bit stream and used forprediction in the unit 1053. The reference numeral 1054 denotes a blockmemory for storing therein the adjacent DCT transform block to be usedfor prediction. A restored DCT transform block obtained from an adder1052 is outputted to an inverse DCT transform unit 1055. The inverse DCTtransform unit 1055 executes an inverse DCT transform process on theinputted DCT transform block to generate image data of the restored DCTtransform coefficients and output the data to an adder 1056. The adder1056 adds the restored image data from the inverse DCT transform unit1055 to the image data of the preceding frame from a motion detectingand compensating unit 1057, thereby generating image data which hasundergone motion detection, compensation and decoding and outputting thedata. The decoded image data is temporarily stored in a frame memory forstoring therein image data of the preceding frame for the motiondetection and compensation and thereafter outputted to the motiondetecting and compensating unit 1057. The motion detecting andcompensating unit 1057 executes the motion detecting and compensatingprocess on the inputted image data.

Further, the decoded image data outputted from the adder 1056 isinversely restored in correspondence with the processes of blocksampling units 1012 and 1026 of FIG. 16 and FIG. 17, so that theoriginal image data is restored.

Further, the reference numeral 1059 denotes an inverse quantizing unit.When the DCT transform domain predicting process is executed before thequantizing process as shown in FIG. 17, the inverse quantizing unit 1059is inserted in a position 1059 a shown in FIG. 20. When the DCTtransform domain predicting process is executed after the quantizingprocess as shown in FIG. 16, the inverse quantizing unit 1059 isinserted in a position 1059 b shown in FIG. 20.

FIG. 21 is a flowchart showing a DC/AC predictive decoding method of theimage predictive decoding apparatus of FIG. 20. That is, FIG. 21 shows adetail of bit stream decoding for obtaining a DC/AC prediction mode andreconstructing DCT transform coefficients from an adjacent DC/ACprediction value.

First of all, in Step 1059, the indication bit is decoded from theinputted bit stream, and the flag of the indication bit is checked inStep 1060. When it is “0”, a DC value is calculated from the averagevalue of the image data of the block located on the upper side and theblock located on the left-hand side in Step 1061, and the program flowproceeds to Step 1063. When the answer is NO in Step 1060, the programflow proceeds to Step 1062. When the designator flag checked in Step1062 is “10”, the image data of the left-hand column of the blocklocated on the left-hand side is extracted in Step 1063, and the programflow proceeds to Step 1065. When the answer is NO in Step 1062, theprogram flow proceeds to Step 1064. When the indicator flag checked inStep 1064 is “11”, the image data of the top row of the block located onthe upper side is extracted in Step 1065, and the program flow proceedsto Step 1066. Finally, in Step 1066, the DCT transform coefficientsobtained or extracted in Steps 1061, 1063 or 1065 is added to thecorresponding DCT transform coefficients of the current block.

Further, a modification example of the present preferred embodimentgroup will be described below.

(a) The above-mentioned block sampling units 1012 and 1026 may includean interleaving process for alternately inserting pixels so that thepixels in a two-dimensional array in the group of four blocks arecomprised of odd-numbered pixels located in the odd-numbered rows in thefirst block, the pixels are comprised of even-numbered pixels located inthe odd-numbered rows in the second block, the pixels are comprised ofthe odd-numbered pixels located in the even-numbered rows in the thirdblock and the pixels are comprised of the even-numbered pixels locatedin the even-numbered rows in the fourth block.

(b) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located adjacently to the coded currentblock and select all the transform coefficients in the block.

(c) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located adjacently to the coded currentblock and select a predetermined subset as the transform coefficients ofthe block.

(d) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located upwardly and leftwardlyadjacent to the coded current block, use only the transform coefficientsof the top row of the block and the leftmost column of the block and setthe remaining transform coefficients to zero.

(e) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located in the vicinity of the codedcurrent block and weight the transform coefficients of the blocks bydifferent weighting functions.

(f) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located in the vicinity of the codedcurrent block and execute a transform computation on the transformcoefficients of the blocks.

(g) It is acceptable, to obtain the above-mentioned prediction blockthrough weighted averaging of a plurality of blocks which have beenpreviously restored, stored in the above-mentioned block memory andlocated in the vicinity of the coded current block.

(h) It is acceptable to execute an inverse interleaving process on theabove-mentioned decoded image data when restoring the original imagedata by forming pixels in a two-dimensional array from a plurality ofgroups each comprised of four interleaved blocks based on the decodedimage data so that the odd-numbered pixels located in the odd-numberedrows are all obtained from the first block, even-numbered pixels locatedin the odd-numbered rows are obtained from the second block, theodd-numbered pixels located in the even-numbered rows are obtained fromthe third block and even-numbered pixels located in the even-numberedrows are obtained from the fourth block.

As described above, according to the present preferred embodiment groupof the present invention, a great effect can be produced for the removalor reduction of the redundancy in the DCT transform domain betweenadjacent blocks, and consequently the number of bits to be used isreduced, eventually allowing the coding efficiency to be remarkablyimproved. Referring to FIG. 18 as a detailed example of the imagepredictive coding apparatus, the predicting process is preferablyexecuted merely by using the adjacent block located on the upper side orthe left-hand side.

In regard to a sequence including QCIF, bits can be saved by 6.4% inhigh order bit rate coding, and bits can be saved by 20% in low orderbit rate coding. Further, bits can be saved by about 10% in another QCIFsequence such as the test sequence of, for example, Akiyo, Mother,Daughter or the like. Furthermore, more bits can be saved in CIF andCCIR sequences.

As described above, according to the second preferred embodiment groupof the present invention, novel image predictive coding apparatus andimage predictive decoding apparatus which increase the coding efficiencyat the present timing can be provided. The present apparatuses requireno complicated device operable to increasing the coding efficiency, andtheir circuit constructions are very simple and easily formed.

Third Preferred Embodiment Group

The third preferred embodiment group includes an eighth preferredembodiment.

In view of the problems of the prior arts, the present inventor hasconsidered a further improvement of the redundancy by reducing not onlythe redundancy between two images or the inside of a block in one imagebut also the redundancy between the blocks in an image and making theblock scan pattern more appropriate.

It has been discovered that DCT transform coefficients in adjacentblocks closely resemble each other in many cases when located in thesame positions. In a case where the properties of the two blocks of theoriginal image closely resemble each other, or when they include samehorizontal or vertical line, diagonal line or another image pattern, theabove-mentioned fact can be considered correct. From the viewpoint ofinformation theory, identical information means a redundancy.

The redundancy existing in the DCT transform domain over a block can beremoved or reduced by adaptability prediction of the preceding block.This fact produces the result that the VLC entropy coding can achieve ahigher coding efficiency for the smaller entropy of a prediction errorsignal.

At the same time, it has been known that important DCT transformcoefficients are concentrated on the transform blocks located in theleftmost column and the top row in the horizontal and verticalstructures. Therefore, the preferred embodiment of the present inventioncan solve the above-mentioned problems in the coefficient scan by makingscan adaptable based on a prediction mode.

The preferred embodiment of the present invention provides a method foradaptively predicting the DCT transform coefficients of the currentblock from another block, consequently removing the redundancy betweenadjacent blocks. Prediction error information can be further reduced bymaking a scan method adaptable to the prediction mode in which theentropy of the DCT transform coefficients are made smaller. As a result,the number of bits for coding the DCT transform coefficients can bereduced.

In an attempt at solving this problem, a method for executing thedetermination of the prediction mode is obtained on the basis of theactual bit rate generated by each prediction and scan method.

The preferred embodiment of the present invention provides a method forpredicting the DCT transform coefficients of the current block. DCTtransform tends to give an identical value or an identical distributionof the DCT transform coefficients to the image data of an identicalblock, and therefore, the current block normally keeps a satisfactorymutual relationship with the DCT transform coefficients in the otheradjacent blocks.

Inputted image data is of an intra-frame or temporarily predicted frame.First of all, the inputted image data is subjected to a DCT transformprocess which is normally based on a block. After the DCT transformcoefficients of the current block is obtained, the prediction of the DCTtransform domain can be executed before or after quantization.

The DCT transform coefficients in the current block can be predictedfrom the preceding adjacent block located diagonally (obliquely) on theupper left-hand side. They have been already decoded at the time asshown in FIG. 23. For the predicted block, a predicted error signal isgenerated by subtracting one or more DCT transform coefficients of thepreceding adjacent block from the DCT transform coefficients in the sameposition of the current block.

A prediction error signal in a varied mode is quantized if a predictionis made before the quantizing process. The quantized prediction errorsignal is scanned for a sequence (series) of image data before entropycoding is executed. A block predicted on the basis of the least bit userule, i.e., the prediction block having the least amount of bits isselected. Coded data of this block is transmitted to an image predictivedecoding apparatus together with a prediction mode to be used.

The image predictive decoding apparatus decodes the predicted block bymeans of the used prediction mode and the coded data of the block. Afterthe coded data of the block is subjected to inverse entropy decoding,the quantized prediction error is inversely scanned according to a scanmode to be used. If the quantizing process is executed after thepredicting process, the block is inverse quantized. The reconstructedblock can be obtained by adding the DCT transform coefficients in thepreviously decoded adjacent block designated by the prediction mode tothe current DCT transform coefficients. When the quantizing process isexecuted before the predicting process, the reconstructed coefficientsare inverse quantized. Finally, the inverse DCT transform process isapplied to the DCT transform coefficients reconstructed for each block,so that a decoded image can be obtained.

The preferred embodiment of the present invention provides imagepredictive coding apparatus and image predictive decoding apparatuswhich reduce the redundancy existing in the DCT transform domain overthe adjacent block.

Eighth Preferred Embodiment

FIG. 24 is a block diagram showing a construction of an image predictivecoding apparatus according to an eighth preferred embodiment of thepresent invention. In comparison with the prior art image predictivecoding apparatus of FIG. 22, the image predictive coding apparatus ofFIG. 24 is characterized by the provision of:

(a) an adder 2035;

(b) an H/V/Z scan unit 2036;

(c) an adder 2038;

(d) a block memory 2039; and

(e) a DCT transform domain predicting unit 2040 having a quantizationscaling.

According to the intra-frame coding (coding inside a frame), an inputtedimage signal is subjected to a block sampling process in a unit 2031 andthereafter subjected directly to a DCT transform process in a unit 2033.Then, the DCT transform coefficients outputted from the DCT transformunit 2033 is subjected to a quantizing process in a unit 2034. On theother hand, according to the inter-frame coding or inter-frame coding(prediction frame coding), after a block sampling process in the unit2031, an adder 2032 subtracts image data outputted from a motiondetecting and compensating unit 2045 from the image data obtained afterthe block sampling process, thereby obtaining prediction error data.Then, the prediction error data is outputted to the adder 2035 via theDCT transform unit 2033 for executing the DCT transform process and thequantizing unit 2034 for executing the quantizing process. The DCTtransform coefficients are predicted through a DCT transform domainprocess in the unit 2040, and the predicted DCT transform coefficientsare inputted to the adder 2035. The adder 2035 subtracts the predictedDCT transform coefficients obtained from the DCT transform domainpredicting unit 2040 from the DCT transform coefficients obtained fromthe quantizing unit 2034 and outputs the DCT transform coefficients ofthe prediction error of the subtraction result to the H/V/Z scan unit2036 and the adder 2038. The H/V/Z scan unit 2036 adaptively executes ahorizontal scan, a vertical scan or a zigzag scan on the inputted DCTtransform coefficients depending on the selected prediction mode andoutputs the DCT transform coefficients obtained after the scan processto an entropy VLC coding unit 2037. Then, the entropy VLC coding unit2037 executes the entropy VLC coding process on the inputted DCTtransform coefficients and transmits the coded bit stream to the imagepredictive decoding apparatus on the receiving side or the reproducingside.

The adder 2038 adds the quantized DCT transform coefficients outputtedfrom the adder 2035 to the predicted DCT transform coefficients from theDCT transform domain predicting unit 2040, thereby obtaining restoredquantized DCT transform coefficient data. The quantized DCT transformcoefficient data is outputted to the block memory 2039 and an inversequantizing unit 2041.

In the local decoder provided in the image predictive coding apparatus,the restored DCT transform coefficient data from the adder 2038 istemporarily stored into the block memory 2039 for storing therein thedata of one block for the execution of the next prediction andthereafter outputted to the DCT transform domain predicting unit 2040.The inverse quantizing unit 2041 inverse quantizes the inputtedquantized DCT transform coefficients and outputs the resultant to aninverse DCT transform unit 2042. Then, the inverse DCT transform unit2042 executes the inverse DCT transform process on the inputted restoredDCT transform coefficients to thereby restore the image data of theblock at the present timing and then output the resulting data to anadder 2043.

According to the inter-frame coding, in order to generate locallydecoded image data, the adder 2043 adds image data which has undergonemotion detection and compensation in the motion detecting andcompensating unit 2045 to the restored image data from the inverse DCTtransform unit 2042 to thereby obtain locally decoded image data, andthe data is stored into a frame memory 2044 of the local decoder. It isto be noted that the construction and processes of the adder 2043, theframe memory 2044 and the motion detecting and compensating unit 2045are similar to those of the units 2009, 2010 and 2011 of the prior artof FIG. 22.

Finally, a bit stream is outputted from the entropy coding unit 2037 andtransmitted to an image predictive coding apparatus;

FIG. 25 is a block diagram showing a construction of an image predictivedecoding apparatus according to the eighth preferred embodiment of thepresent invention. In comparison with the prior art image predictivedecoding apparatus of FIG. 23, the image predictive decoding apparatusof FIG. 25 is characterized by the provision of:

(a) an H/V/Z scan unit 2052;

(b) an adder 2053;

(c) a DCT transform domain predicting unit 2055; and

(d) a block memory 2054.

In FIG. 25, the bit stream from the image predictive coding apparatus isdecoded in a variable length decoder unit 2051. The decoded data isinputted to the H/V/Z scan unit 2052 and scanned horizontally in thereverse direction, vertically in the reverse direction or in a zigzagmanner in the reverse direction depending on the scan mode. The dataobtained after the scan process is inputted to the adder 2053, and theadder 2053 adds the data obtained after the reverse scan process toprediction error data from the DCT transform domain predicting unit 2055to thereby obtain decoded DCT transform coefficient data and store thisinto the block memory 2054. Then, an inverse quantizing unit 2056inverse quantizes the inputted coded DCT transform coefficient data tothereby obtain inverse quantized DCT transform coefficient data andoutput the data to an inverse DCT transform unit 2057. The inverse DCTtransform unit 2057 executes an inverse DCT transform process on theinputted DCT transform coefficient data to thereby restore the originalimage data and then output the data to an adder 2058. According to theinter-frame coding, the adder 2059 adds image data from the inverse DCTtransform unit 2057 to prediction error data from a motion detecting andcompensating unit 2060 to thereby obtain locally decoded image data,output the data to an external device and store the same into a framememory 2059.

Further, the decoded image data outputted from the adder 2058 issubjected to an inverse restoring process corresponding to the processof the block sampling unit 2031 of FIG. 24, so that the original imagedata is restored.

In the above preferred embodiment, the quantizing process is executedprior to the predicting process. According to a modification example,the quantizing process may be executed after the predicting process. Inthis case, in the local decoder and the image predictive decodingapparatus, the inverse quantizing process is executed before theprediction value is added. The other details are all similar to those ofthe above-mentioned preferred embodiment.

FIG. 26 is a schematic view of an image showing a constructions of amacro block and blocks of a frame obtained through the block division aswell as a block predicting method according to the eighth preferredembodiment. The enlarged view of FIG. 26 shows how the prediction datafor the current block is coded. In this case, a block C(u,v) is obtainedfrom an upwardly adjacent block A(u,v) and a leftwardly adjacent blockB(u,v). This preferred embodiment of the present invention will bedescribed in more detail next.

C1. Coefficient Number Used for Prediction

The coefficient number used for prediction depends on the sequence ofimage data. A flag AC_Coeff is used for adaptively selecting the optimumnumber of coefficients to be used for each image. The flag is shown inTable 2 provided below and transmitted as part of side information froman image predictive coding apparatus to an image predictive decodingapparatus. The fixed length code and FLC for the flag AC_Coeff are shownin Table 2. In this case, FLC (Fixed Length Coding) is a reversiblecoding for assigning fixed length code words for expressing all thepossible events.

TABLE 2 Fixed Length Code FLC for Flag AC_Coeff Index AC_Coeff (used forPrediction) FLC 0 DC Only 000 1 DC + AC1 001 2 DC + AC1 + AC2 010 3 DC +AC1 + AC2 + AC3 011 4 DC + AC1 + AC2 + AC3 + AC4 100 5 DC + AC1 + AC2 +AC3 + AC4 + AC5 101 6 DC + AC1 + AC2 + AC3 + AC4 + AC5 + AC6 110 7 DC +AC1 + AC2 + AC3 + AC4 + AC5 + AC6 + AC7 111

In this case, ACn is A(0, n) or B(n, 0) depending on the mode to beused.

According to the specific case of the this preferred embodiment, all theAC coefficients located in the top row and the leftmost column are usedfor the prediction. In this case, no flag is required when both theimage predictive coding apparatus and the image predictive decodingapparatus agree with this default value.

Scaling of Quantization Step

When an adjacent block is quantized with a quantization step sizedifferent from that of the current block, the prediction of ACcoefficients is not so efficient. Therefore, by the predicting method,prediction data is deformed so as to be scaled according to the ratio ofthe quantization step size of the current block at the present timing tothe quantization step of the prediction data block. This definition isgiven by the equations in the following section C3.

C3. Prediction Mode

A plurality of modes to be set are as follows.

(a) Mode 0: DC prediction from the block located on the upper side ofthe block to be processed (abbreviated as “UpwardDC Mode”).

E ₀(0, 0)=C(0, 0)−A(0, 0), E ₀(u, v)=C(u, v)  (7)

(b) Mode 1: DC prediction from the block located on the left-hand sideof the block to be processed (abbreviated as“Leftward DC Mode”).

E ₁(0, 0)=C(0, 0)−B(0, 0), E ₁(u, v)=C(u, v)  (8)

(c) Mode 2: DC/AC prediction from the block located on the upper side ofthe block to be processed (abbreviated as “Upward DC/AC Mode”).

E ₂(0, 0)=C(0, 0)−A(0, 0), E ₂(0, v)=C(0, v)−A(0, v)·Q _(A) /Q _(c) ,v=1, 2, . . . , AC_Coeff, E ₂(u, v)=C(u, v)  (9)

(d) Mode 3: DC/AC prediction from the block located on the left-handside of the block to be processed (abbreviated as “Leftward DC/ACMode”).

E ₃(0, 0)=C(0, 0)−B(0, 0), E ₃(u, 0)=C(u, 0)−B(u, 0)·QB/QC u=1, 2, . . ., AC_Coeff, E ₃(u, v)=C(u, v)  (10)

C4. Adaptive Horizontal/Vertical/Zigzag Scan

If the above four prediction modes are given, the efficiency of theintra-frame coding can be further improved by adopting a coefficientscan.

FIG. 27, FIG. 28 and FIG. 29 are schematic views for explaining thesequence of a horizontal scan, a vertical scan and a horizontal scanused for the coefficient scan of the eighth preferred embodiment. Inthis case, these scans are collectively referred to as H/V/Z scan.

C5. Determination of Explicit Mode

In determining an explicit mode, determination of the prediction mode isexecuted in the image predictive coding apparatus, and the determinationinformation is explicitly transmitted from the image predictive codingapparatus to the image predictive decoding apparatus by means of severalpieces of coded bit information of the bit stream.

FIG. 30 is a flowchart showing a mode determining process used for theeighth preferred embodiment.

FIG. 30, DCT transform coefficient data of the current block is inputtedto a unit 2062, and the unit 2062 subtracts the inputted DCT transformcoefficient data of the current block from the DCT transform coefficientdata of the adjacent block obtained from a block memory 2061, therebyexcecuting a DCT transform predicting process. In the unit 2062, the DCTtransform predicting process executed in the four modes described in thesection C3. Then, the coefficient scan process is executed in an H/V/Zscan unit 2063, and in this case, the respectively corresponding scanprocesses described in the section C4. are executed as shown in FIG. 30.Further, the DCT transform coefficient data obtained after the scanprocess is transmitted to an entropy coding unit 2064 in which thevariable length coding process is executed. Then, In a unit 2065, allthe bits generated in different modes are compared with one another, anda unit 2066 selects the block of the DCT transform coefficients of theprediction mode which generates the least amount of bits. The bits ofthese DCT transform coefficient data are transmitted as a bit streamfrom the unit 2066 to the image predictive decoding apparatus togetherwith a prediction mode value. It is to be noted that the prediction modeis coded with the fixed length codes shown in the following Table 3.

TABLE 3 FLC Table for DC/AC/Scan Mode Index DC/AC Mode Scan Mode FLCcode 0 Upward DC Zigzag Scan 00 1 Leftward DC Zigzag Scan 01 2 Upward(DC + AC) Horizontal Scan 10 3 Leftward (DC + AC) Vertical Scan 11

Determination of Implicit Mode

According to a second preferred embodiment of the mode determination,the image predictive coding apparatus and the image predictive decodingapparatus commonly own an identical prediction mode determiningfunction. The image predictive coding apparatus and the image predictivedecoding apparatus cooperatively determine the directionality concerningthe determination of the prediction mode based on the DC coefficientsvalues of a decoded block adjacent to the current block. That is,according to the determination in the implicit mode, the determinationin the implicit mode is executed in the image predictive codingapparatus and the image predictive decoding apparatus by several rules.Then, additional information data representing the mode determination isnot transmitted from the image predictive coding apparatus to the imagepredictive decoding apparatus.

FIG. 31 is a schematic view of an image showing a relationship betweenblocks according to the implicit mode determination of the eighthpreferred embodiment. That is, FIG. 31 shows a positional relationshipbetween blocks and the objective current block to be predicted.

In FIG. 31, a block C is the current block to be processed which iscurrently predicted. A block A is the block located on the upper side ofthe current block C being predicted. A block C is the block located onthe left-hand side of the current block C. A block C′ is the block thatis located diagonally to the current block C and between the block A andthe block B.

First of all, the DC direction is determined. It is determined whetheror not the AC coefficients are similarly predicted according to anindividual determining method. For executing this, the sum total of thedifferences between the absolute values of prediction coefficients iscompared with the absolute value of non-prediction coefficients and theyare determined which is smaller. One bit is used for this designation tothe image predictive decoding apparatus. For determining whether or notthe directionality of DC prediction and AC coefficients are predicted,the following equations are used. Table 3 shows the possible fourconclusions summarized. (A1) If

(B(0, 0)−C′(0, 0)<C(0, 0)−A(0, 0))  (11)

then there holds

E(0, 0)=C(0, 0)−A(0, 0)  (12)

and

(a1) if $\begin{matrix}\left( {{\sum\limits_{v = 1}^{7}{C\left( {0,v} \right)}} \geq {{\sum\limits_{v = 1}^{7}{C\left( {0,v} \right)}} - {A\left( {0,v} \right)}}} \right) & (13)\end{matrix}$

then

E(0, v)=C(0, v)−A(0, v)·Q _(A) /Q _(C) , v=1 , . . . , 7,  (14)

or

(a2) if the above equation (13) does not hold, then

E(0, v)=C(0, v)  (15)

(A2) If the above equation (11) does not hold, then

E(0, 0)=C(0, 0)−B(0, 0)  (16)

and

(b1) if $\begin{matrix}\left( {{\sum\limits_{v = 1}^{7}\quad {C\left( {u,0} \right)}} \geq {{\sum\limits_{v = 1}^{7}\quad {C\left( {u,0} \right)}} - {B\left( {u,0} \right)}}} \right) & (17)\end{matrix}$

then

E(u, 0)=C(u, 0)−B(u, 0)·Q _(B) /Q _(C) , v=1, . . . , 7,  (18)

or

(b2) if the above equation (17) does not hold, then

E(u, 0)=C(u, 0)  (19)

Further, in regard to all the other coefficients, there holds

E(u, v)=C(u, v)  (20)

TABLE 4 FLC Table for DC/AC Scan Mode by Implicit Determination DC/ACScan FLC Code Implicit Determination Mode Mode 00 |B(0,0)-C′(0,0)|Upward Zigzag <|C′(0,0)-A(0,0)| DC Scan 01 |B(0,0)-C′(0,0)| LeftwardZigzag ≧|C′(0,0)-A(0,0)| DC Scan 10 |B(0,0)-C′(0,0)| Upward Horizontal<|C′(0,0)-A(0,0)| DC Scan 11 |B(0,0)-C′(0,0)| Leftward Vertical≧|C′(0,0)-A(0,0)| (DC + AC) Scan

In the above eighth preferred embodiment, the DCT transform coefficientspredicting process is executed on the quantized transform coefficientdata by the unit 2040. However, the present invention is not limited tothis, and the process may be executed on transform coefficient data thatis not quantized in a manner similar to that of the sixth preferredembodiment of FIG. 17. In this case, in the corresponding imagepredictive decoding apparatus, shown in FIG. 25, the inverse quantizingunit 2056 is shifted to be inserted between the H/V/Z scan unit 2052 andthe adder 2053.

A modification example of the eighth preferred embodiment will bedescribed below.

(a) The block sampling unit 2031 may include an interleaving process foralternately inserting pixels so that the pixels in a two-dimensionalarray in the group of four blocks are comprised of odd-numbered pixelslocated in the odd-numbered rows in the first block, the pixels arecomprised of even-numbered pixels located in the odd-numbered rows inthe second block, the pixels are comprised of the odd-numbered pixelslocated in the even-numbered rows in the third block and the pixels arecomprised of even-numbered pixels located in the even-numbered rows inthe fourth block.

(b) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located adjacently to the coded currentblock and select all the coefficient data in the block.

(c) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located adjacently to the coded currentblock and select a predetermined subset as the coefficient data of theblock.

(d) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored, stored in theabove-mentioned block memory and located upwardly and leftwardlyadjacent to the coded current block, use only the coefficient data ofthe top row of the block and the leftmost column of the block and setthe remaining coefficient data to zero.

(e) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored and stored in theabove-mentioned block memory according to the above-mentioned criteria,

and determine the use of only a subset including one or more pieces ofcoefficient data from the top row or the leftmost column of the block byexecuting a communication between the image predictive coding apparatusand the image predictive decoding apparatus

(f) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored and stored into theabove-mentioned block memory according to the above-mentioned criteria,

determine the use of only a subset including one or more pieces ofcoefficient data from the top row or the leftmost column by the imagepredictive coding apparatus and inform the image predictive decodingapparatus of a flag representing the determined number of subsets andpieces of coefficient data by periodically inserting them into the datato be transmitted to the image predictive decoding apparatus.

(g) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored and stored into theabove-mentioned block memory according to the above-mentioned criteria,

and multiply the coefficient data of each block by a ratio equal to theratio of the quantization step size of the current block to be coded tothe quantization step size of the prediction block.

(h) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored and stored into theabove-mentioned block memory according to the above-mentioned criteria,and weight the coefficient data of each block by a varied weightingfactor.

(i) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored and stored into theabove-mentioned block memory according to the above-mentioned criteria,

and execute a predetermined transform computation on the coefficientdata of each block.

(j) It is acceptable to obtain the above-mentioned prediction blockthrough weighted averaging of the blocks which have been previouslyrestored and stored into the above-mentioned block memory and locatedadjacently to the current block to be coded.

(k) The scan method may include at least one scan method of:

(i) a horizontal scan executed so that the coefficient data are scannedevery row from left to right, started from the top row and ended in thelowermost row;

(ii) a vertical scan executed so that the coefficient data are scannedevery column from the top row toward the lowermost row, started from theleftmost column and ended in the rightmost column; and

(iii) a zigzag scan executed so that the coefficient data are diagonallyscanned from the leftmost coefficient data in the top row toward therightmost coefficient data in the lowermost row.

(l) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored and stored into theabove-mentioned block memory according to the above-mentioned criteria,

make the prediction mode of the above-mentioned prediction block includeat least one prediction mode of:

(i) a first mode in which only the top and leftmost coefficient datarepresenting the average value of the block called a DC coefficient fromthe block located on the upper side of the objective current block to beprocessed are used for prediction;

(ii) a second mode in which only a DC coefficient from the block locatedon the left-hand side of the objective current block to be processed isused for prediction;

(iii) a third mode in which a DC coefficient and zero or more ACcoefficients including high-frequency components from the top row of theblock located on the upper side of the objective current block to beprocessed are used for prediction; and

(iv) a fourth mode in which a DC coefficient and zero or more ACcoefficients including high-frequency components from the leftmostcolumn of the block located on the left-hand side of the objectivecurrent block to be processed are used for prediction, and

scan the coefficient data of the above-mentioned prediction erroraccording to the zigzag scan method.

(m) It is acceptable to select the above-mentioned prediction block fromthe blocks which have been previously restored and stored into theabove-mentioned block memory according to the above-mentioned criteria,

scan the coefficient data of the above-mentioned prediction erroraccording to one of the above-mentioned scan methods, and

make the prediction mode for predicting the coefficient data of theabove-mentioned prediction error include at least one of the followings:

(i) a first mode in which only the DC coefficient of the block locatedon the upper side of the objective current block to be processed is usedfor prediction and the coefficient data of the above-mentionedprediction error is subjected to the zigzag scan process;

(ii) a second mode in which only the DC coefficient of the block locatedon the left-hand side of the objective current block to be processed isused for prediction and the coefficient data of the above-mentionedprediction error is subjected to the zigzag scan process;

(iii) a third mode in which the DC coefficient and zero or more ACcoefficients including high-frequency components of the top row of theblock located on the upper side of the objective current block to beprocessed are used for prediction and the coefficient data of theabove-mentioned prediction error is subjected to the horizontal scanprocess;

(iv) a fourth mode in which the DC coefficient and zero or more ACcoefficients including high-frequency components of the leftmost columnof the block located on the left-hand side of the objective currentblock to be processed are used for prediction and the coefficient dataof the above-mentioned prediction error is subjected to the verticalscan process.

(n) It is acceptable to execute an inverse interleaving process on theabove-mentioned decoded image data when restoring the original imagedata by forming pixels in a two-dimensional array from a plurality ofgroups each comprised of four interleaved blocks based on theabove-mentioned decoded image data so that the odd-numbered pixelslocated in the odd-numbered rows are all obtained from the first block,even-numbered pixels located in the odd-numbered rows are obtained fromthe second block, the odd-numbered pixels located in the even-numberedrows are obtained from the third block and even-numbered pixels locatedin the even-numbered rows are obtained from the fourth block.

(o) The image predictive coding apparatus and the image predictivedecoding apparatus may determine the above-mentioned prediction mode bya predetermined identical rule.

(p) The image predictive coding apparatus and the image predictivedecoding apparatus may determine the above-mentioned scan method by apredetermined identical rule.

As described above, the third preferred embodiment group of the presentinvention is very effective in reducing or removing the redundancy inthe DCT transform domain over the adjacent block, and the number of bitsto be used is reduced, consequently allowing the coding efficiency to beremarkably improved. This is also useful as a tool of a novel videocompression algorithm.

Although the above-mentioned preferred embodiments have described theimage predictive coding apparatus and the image predictive decodingapparatus, the present invention is not limited to this. There may be animage predictive coding method including steps obtained by replacing theconstituent elements such as the means and units of the image predictivecoding apparatus with respective steps. There may also be an imagepredictive decoding method including steps obtained by replacing theconstituent elements such as the means and units of the image predictivedecoding apparatus with respective steps. In this case, for example, thesteps of the above image predictive coding method and/or the imagepredictive decoding method are stored as a program into a storagedevice, and a controller such as a microprocessor unit (MPU) or acentral processing unit (CPU) executes the program, thereby executingthe image predictive coding process and/or the image predictive decodingprocess.

Furthermore, the present invention may provide a recording medium inwhich a program including the steps of the image predictive codingmethod and/or the image predictive decoding apparatus is recorded. Therecording medium has a disk-like shape in which, for example, itsrecording region is segmented in a sector-like form or its recordingregion has a spiral form segmented into blocks, and the medium isprovided by an optical disk such as CD-ROM or DVD, a magneto-optic diskor a magnetic disk such as a floppy disk.

Industrial Applicability

As mentioned above, according to the present invention, there isprovided an image predictive coding apparatus comprising:

dividing device operable to divide inputted image data to be coded intoimage data of a plurality of small regions which are adjacent to oneanother;

first generating device operate, when coding the image data of anobjective small region to be processed among the image data of theplurality of small regions which are divided by the dividing device andadjacent to one another, to use image data of a reproduced reproductionsmall region adjacent to the image data of the objective small region tobe processed as image data of an intra-frame prediction small region ofthe objective small region to be processed, to use the image data of theintra-frame prediction small region as image data of an optimumprediction small region and to generate image data of a difference smallregion which are differences between the image data of the objectivesmall region to be processed and the image data of the optimumprediction small region;

coding device operable to code the image data of the difference smallregion generated by the generating device;

decoding device operable to decode the image data of the differencesmall region coded by the coding device; and

second generating device operable to generate image data of a reproducedreproduction small region by adding the image data of the differencesmall region decoded by the decoding device to the image data of saidoptimum prediction small region.

Therefore, by merely using the reproduced pixel value adjacent to theimage data of the objective small region to be processed as the pixelvalue of the intra-frame prediction signal, a high-accuracy predictionsignal can be simply generated with a smaller amount of computationsthan in the prior arts, thereby allowing the obtainment of the uniqueeffect that the number of bits of the intra-frame coding can be reduced.

Also, according to the present invention, there is provided an imagepredictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array,

transforming device operable to transform the image data of the blockssampled by the sampling device into coefficient data of a predeterminedtransform domain;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of a block whichhas been previously reconstructed and stored in the block memory;

determining device operable to determine, select and output thecoefficient data of a most efficient prediction block among thecoefficient data of the plurality of prediction blocks formed by thepredicting device and transmit an identifier indicating the selectedprediction block in an indication bit form to an image predictivedecoding apparatus;

first adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of a prediction error of the result of subtraction;

quantizing device operable to quantize the coefficient data of theprediction error outputted from the first adding device;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error from the quantizing device andtransmit the coded coefficient data of the prediction error to the imagepredictive decoding apparatus;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error from the quantizng device and output thecoefficient data of the restored block;

second adding device operable to add the coefficient data of theprediction block outputted from the determining device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby output coefficient data of the restoredblock and storing the data into the block memory; and

inverse transforming device operable to inverse transform thecoefficient data of the block outputted from the second adding device,thereby generating image data of the restored block.

Therefore, novel image predictive coding apparatus and image predictivedecoding apparatus which increase the coding efficiency at the presenttiming can be provided. The apparatuses do not require any complicateddevice operable to increasing the coding efficiency, and the circuitconstruction thereof is very simple and is able to be easily formed.

Further, according to the present invention, there is provided an imagepredictive coding apparatus comprising:

sampling device operable to sample an inputted image signal into imagedata of a plurality of blocks each including pixel values of atwo-dimensional array;

transforming device operable to transform the image data of the blockssampled by the sampling device into coefficient data of a predeterminedtransform domain;

a block memory for storing therein coefficient data of a restored block;

predicting device operable to form coefficient data of a plurality ofprediction blocks for the coefficient data of the block transformed bythe transforming device based on the coefficient data of a block whichhas been previously reconstructed and stored in the block memory,

determining device operable to determine, select and output thecoefficient data and scan method of a most efficient prediction blockamong the coefficient data of the plurality of prediction blocks formedby the predicting device and transmit an identifier indicating theselected prediction block and scan method in an indication bit form toan image predictive decoding apparatus;

first adding device operable to subtract the coefficient data of theprediction block selected by the determining device from the coefficientdata of the current block at the present timing, thereby outputtingcoefficient data of a prediction error of the result of subtraction;

quantizing device operable to quantize the coefficient data of theprediction error outputted from the first adding device;

scanning device operable to execute a scan process on the coefficientdata of the prediction error from the quantizing device according to thescan method determined by the determining device and outputting thecoefficient data of the prediction error obtained after the scanprocess;

coding device operable to code in an entropy coding manner thecoefficient data of the prediction error obtained after the scan processoutputted from the scanning device and transmit the coded coefficientdata of the prediction error to the image predictive decoding apparatus;

inverse quantizing device operable to inverse quantize the coefficientdata of the prediction error from the quantizing device and output thecoefficient data of the restored block;

second adding device operable to add the coefficient data of theprediction block outputted from the determining device to thecoefficient data of the prediction error outputted from the inversequantizing device to thereby output coefficient data of the restoredblock and storing the data into the block memory; and

inverse transforming device operable to inverse transform thecoefficient data of the block outputted from the second adding device,thereby generating image data of the restored block.

Therefore, the apparatus is very effective in reducing or removing theredundancy in the transform domain over the adjacent block, and thenumber of bits to be used is reduced, consequently allowing the codingefficiency to be remarkably improved. This is also useful as a tool of anovel video compression algorithm.

What is claimed:
 1. An image prediction decoding apparatus for decodingan input bit stream, the bit stream including variable length encodedDCT coefficients and an indication bit, said image prediction decodingapparatus comprising: a variable length decoder operable to decode thevariable length encoded DCT coefficients into a one-dimensional array ofDCT coefficients; and an inverse scanning device operable to inversescan the one-dimensional array of DCT coefficients into atwo-dimensional array of DCT coefficients; wherein said inverse scanningdevice is operable to perform either one of following scans: (1) azigzag scan when the indication bit indicates that AC coefficients of acurrent block are not predicted from an adjacent block in coding; and(2) either a vertical scan or a horizontal scan adaptively selected whenthe indication bit indicates that the AC coefficients of a current blockare predicted from an adjacent block.
 2. An image prediction decodingapparatus of claim 1, wherein said inverse scanning device is operableto scan the one-dimensional array of DCT coefficients into 8×8 blocks ofDCT coefficients.
 3. An image prediction decoding apparatus of claim 1,wherein said inverse scanning device is operable to perform thefollowing scans; (1) a zigzag scan for 8×8 blocks of DCT transformcoefficients in a following order when the indication bit indicates thatthe AC coefficients of the current block are not predicted from anadjacent block in coding; $\begin{matrix}{0,} & {1,} & {5,} & {6,} & {14,} & {15,} & {27,} & {28;} \\{2,} & {4,} & {7,} & {13,} & {16,} & {26,} & {29,} & {42;} \\{3,} & {8,} & {12,} & {17,} & {25,} & {30,} & {41,} & {43;} \\{9,} & {11,} & {18,} & {24,} & {31,} & {40,} & {44,} & {53;} \\{10,} & {19,} & {23,} & {32,} & {39,} & {45,} & {52,} & {54;} \\{20,} & {22,} & {33,} & {38,} & {46,} & {51,} & {55,} & {60;} \\{21,} & {34,} & {37,} & {47,} & {50,} & {56,} & {59,} & {61;} \\{35,} & {36,} & {48,} & {49,} & {57,} & {58,} & {62,} & {63;}\end{matrix}$

(2) a scan in a following order when the indication bit indicates thatthe AC coefficients of the current block are predicted from an adjacentblock, and the DC prediction refers to the left block; $\begin{matrix}{0,} & {4,} & {6,} & {20,} & {22,} & {36,} & {38,} & {52;} \\{1,} & {5,} & {7,} & {21,} & {23,} & {37,} & {39,} & {53;} \\{2,} & {8,} & {19,} & {24,} & {34,} & {40,} & {50,} & {54;} \\{3,} & {9,} & {18,} & {25,} & {35,} & {41,} & {51,} & {55;} \\{10,} & {17,} & {26,} & {30,} & {42,} & {46,} & {56,} & {60;} \\{11,} & {16,} & {27,} & {31,} & {43,} & {47,} & {57,} & {61;} \\{12,} & {15,} & {28,} & {32,} & {44,} & {48,} & {58,} & {62;} \\{13,} & {14,} & {29,} & {33,} & {45,} & {49,} & {59,} & {63;\quad {and}}\end{matrix}$

(3) a scan in a following order when the indication bit indicates thatthe AC coefficients of the current block are predicted from an adjacentblock, and the DC prediction refers to the above block: $\begin{matrix}{0,} & {1,} & {2,} & {3,} & {10,} & {11,} & {12,} & {13;} \\{4,} & {5,} & {8,} & {9,} & {17,} & {16,} & {15,} & {14;} \\{6,} & {7,} & {19,} & {18,} & {26,} & {27,} & {28,} & {29;} \\{20,} & {21,} & {24,} & {25,} & {30,} & {31,} & {32,} & {33;} \\{22,} & {23,} & {34,} & {35,} & {42,} & {43,} & {44,} & {45;} \\{36,} & {37,} & {40,} & {41,} & {46,} & {47,} & {48,} & {49;} \\{38,} & {39,} & {50,} & {51,} & {56,} & {57,} & {58,} & {59;} \\{52,} & {53,} & {54,} & {55,} & {60,} & {61,} & {62,} & 63.\end{matrix}$


4. An image prediction decoding apparatus for decoding an input bitstream, the bit stream including variable length encoded DCTcoefficients and an indication bit, said image prediction decodingapparatus comprising: a variable length decoder operable to decode thevariable length encoded DCT coefficients into a one-dimensional array ofDCT coefficients; an inverse scanning device operable to inverse scanthe one-dimensional array of DCT coefficients into a two-dimensionalarray of DCT coefficients; and a prediction device operable to predict aDC coefficient of a current block from a DC coefficient of animmediately adjacent block adaptively selected from either one of anabove block or a left block; wherein said inverse scanning device isoperable to perform either one of following scans; (1) a zigzag scanwhen the indication bit indicates that AC coefficients of the currentblock are not predicted from an adjacent block in coding; (2) a verticalscan when the indication bit indicates that the AC coefficients of thecurrent block are to be predicted from an adjacent block, and the DCprediction refers to the left block; and (3) a horizontal scan when theindication bit indicates that the AC coefficients of the current blockare to be predicted from an adjacent block, and the DC prediction refersto the above block.
 5. An image prediction decoding apparatus of claim4, further comprising: a decision device operable to decide if a DCcoefficient of a current block be predicted from an immediately adjacentblock adaptively selected from either an above block or a left block;wherein said decision device is operable to provide-the decisioninformation to said inverse scanning device and said prediction device.6. An image prediction decoding apparatus of claim 4, wherein saidinverse scanning device is operable to scan the one-dimensional array ofDCT coefficients into 8×8 blocks of DCT coefficients.
 7. An imageprediction decoding apparatus of claim 4, wherein said inverse scanningdevice is operable to perform the following scans; (1) a zigzag scan for8×8 blocks of DCT transform coefficients in a following order when theindication bit indicates that the AC coefficients of the current blockare not predicted from an adjacent block in coding; $\begin{matrix}{0,} & {1,} & {5,} & {6,} & {14,} & {15,} & {27,} & {28;} \\{2,} & {4,} & {7,} & {13,} & {16,} & {26,} & {29,} & {42;} \\{3,} & {8,} & {12,} & {17,} & {25,} & {30,} & {41,} & {43;} \\{9,} & {11,} & {18,} & {24,} & {31,} & {40,} & {44,} & {53;} \\{10,} & {19,} & {23,} & {32,} & {39,} & {45,} & {52,} & {54;} \\{20,} & {22,} & {33,} & {38,} & {46,} & {51,} & {55,} & {60;} \\{21,} & {34,} & {37,} & {47,} & {50,} & {56,} & {59,} & {61;} \\{35,} & {36,} & {48,} & {49,} & {57,} & {58,} & {62,} & {63;}\end{matrix}$

(2) a scan in a following order when the indication bit indicates thatthe AC coefficients of the current block are predicted from an adjacentblock, and the DC prediction refers to the left block; $\begin{matrix}{0,} & {4,} & {6,} & {20,} & {22,} & {36,} & {38,} & {52;} \\{1,} & {5,} & {7,} & {21,} & {23,} & {37,} & {39,} & {53;} \\{2,} & {8,} & {19,} & {24,} & {34,} & {40,} & {50,} & {54;} \\{3,} & {9,} & {18,} & {25,} & {35,} & {41,} & {51,} & {55;} \\{10,} & {17,} & {26,} & {30,} & {42,} & {46,} & {56,} & {60;} \\{11,} & {16,} & {27,} & {31,} & {43,} & {47,} & {57,} & {61;} \\{12,} & {15,} & {28,} & {32,} & {44,} & {48,} & {58,} & {62;} \\{13,} & {14,} & {29,} & {33,} & {45,} & {49,} & {59,} & {63;\quad {and}}\end{matrix}$

(3) a scan in a following order when the indication bit indicates thatthe AC coefficients of the current block are predicted from an adjacentblock, and the DC prediction refers to the above block: $\begin{matrix}{0,} & {1,} & {2,} & {3,} & {10,} & {11,} & {12,} & {13;} \\{4,} & {5,} & {8,} & {9,} & {17,} & {16,} & {15,} & {14;} \\{6,} & {7,} & {19,} & {18,} & {26,} & {27,} & {28,} & {29;} \\{20,} & {21,} & {24,} & {25,} & {30,} & {31,} & {32,} & {33;} \\{22,} & {23,} & {34,} & {35,} & {42,} & {43,} & {44,} & {45;} \\{36,} & {37,} & {40,} & {41,} & {46,} & {47,} & {48,} & {49;} \\{38,} & {39,} & {50,} & {51,} & {56,} & {57,} & {58,} & {59;} \\{52,} & {53,} & {54,} & {55,} & {60,} & {61,} & {62,} & 63.\end{matrix}$


8. An image prediction decoding apparatus for decoding an input bitstream, the input bit stream is generated by: sampling an image signalinto a plurality of blocks; transforming the image signal of the blocksinto a two dimensional array of DCT coefficients having a DC coefficientand AC coefficients; predicting at least one of a DC coefficient and ACcoefficients of a current block from DCT coefficients of an immediatelyadjacent block adaptively selected from either an above block or a leftblock; and providing an indication bit which indicates that the ACcoefficients of the current block are predicted from coding; scanningthe two dimensional array of DCT coefficients into a one dimensionalarray of DCT coefficients, and variable length encoding the onedimensional array of DCT coefficients; said image predictive decodingapparatus comprising: a variable length decoder operable to decode thevariable length encoded DCT coefficients into a one-dimensional array ofDCT coefficients; an inverse scanning device operable to inverse scanthe one-dimensional array of DCT coefficients into a two-dimensionalarray of DCT coefficients; and a prediction device operable to predict aDC coefficient of the current block from a DC coefficient of animmediately adjacent block adaptively selected from either an aboveblock or a left block, wherein said inverse scanning device is operableto perform either one of following scans; (1) a zigzag scan when theindication bit indicates that AC coefficients of the current block arenot predicted from an adjacent block in coding; (2) a vertical scan whenthe indication bit indicates that AC coefficients of the current blockare to be predicted from an adjacent block, and the DC prediction refersto a left block; and (3) a horizontal scan when the indication bitindicates that AC coefficients of the current block are to be predictedfrom an adjacent block, and the DC prediction refers to the above block.9. An image prediction decoding apparatus of claim 8, furthercomprising: a decision device operable to decide if a DC coefficient ofa current block be predicted from an immediately adjacent blockadaptively selected from either an above block or a left block; whereinsaid decision device is operable to provide the decision information tosaid inverse scanning device and said prediction device.
 10. An imageprediction decoding apparatus of claim 8, wherein said inverse scanningdevice is operable to scan the one-dimensional array of DCT coefficientsinto 8×8 blocks of DCT coefficients.
 11. An image prediction decodingapparatus of claim 8, wherein said inverse scanning device is operableto perform the following scans; (1) a zigzag scan for 8×8 blocks of DCTtransform coefficients in a following order when the indication bitindicates that the AC coefficients of the current block are notpredicted from an adjacent block in coding; $\begin{matrix}{0,} & {1,} & {5,} & {6,} & {14,} & {15,} & {27,} & {28;} \\{2,} & {4,} & {7,} & {13,} & {16,} & {26,} & {29,} & {42;} \\{3,} & {8,} & {12,} & {17,} & {25,} & {30,} & {41,} & {43;} \\{9,} & {11,} & {18,} & {24,} & {31,} & {40,} & {44,} & {53;} \\{10,} & {19,} & {23,} & {32,} & {39,} & {45,} & {52,} & {54;} \\{20,} & {22,} & {33,} & {38,} & {46,} & {51,} & {55,} & {60;} \\{21,} & {34,} & {37,} & {47,} & {50,} & {56,} & {59,} & {61;} \\{35,} & {36,} & {48,} & {49,} & {57,} & {58,} & {62,} & {63;}\end{matrix}$

(2) a scan in a following order when the indication bit indicates thatthe AC coefficients of the current block are predicted from an adjacentblock, and the DC prediction refers to the left block; $\begin{matrix}{0,} & {4,} & {6,} & {20,} & {22,} & {36,} & {38,} & {52;} \\{1,} & {5,} & {7,} & {21,} & {23,} & {37,} & {39,} & {53;} \\{2,} & {8,} & {19,} & {24,} & {34,} & {40,} & {50,} & {54;} \\{3,} & {9,} & {18,} & {25,} & {35,} & {41,} & {51,} & {55;} \\{10,} & {17,} & {26,} & {30,} & {42,} & {46,} & {56,} & {60;} \\{11,} & {16,} & {27,} & {31,} & {43,} & {47,} & {57,} & {61;} \\{12,} & {15,} & {28,} & {32,} & {44,} & {48,} & {58,} & {62;} \\{13,} & {14,} & {29,} & {33,} & {45,} & {49,} & {59,} & {63;\quad {and}}\end{matrix}$

(3) a scan in a following order when the indication bit indicates thatthe AC coefficients of the current block are predicted from an adjacentblock, and the DC prediction refers to the above block: $\begin{matrix}{0,} & {1,} & {2,} & {3,} & {10,} & {11,} & {12,} & {13;} \\{4,} & {5,} & {8,} & {9,} & {17,} & {16,} & {15,} & {14;} \\{6,} & {7,} & {19,} & {18,} & {26,} & {27,} & {28,} & {29;} \\{20,} & {21,} & {24,} & {25,} & {30,} & {31,} & {32,} & {33;} \\{22,} & {23,} & {34,} & {35,} & {42,} & {43,} & {44,} & {45;} \\{36,} & {37,} & {40,} & {41,} & {46,} & {47,} & {48,} & {49;} \\{38,} & {39,} & {50,} & {51,} & {56,} & {57,} & {58,} & {59;} \\{52,} & {53,} & {54,} & {55,} & {60,} & {61,} & {62,} & 63.\end{matrix}$